天天看點

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

文章目录

  • 1 操作系统环境准备
    • 1.1 Windows的两个注意事项
    • 1.2 Linux环境下的服务器确认
      • 1.2.1 操作系统目录划分
      • 1.2.2 添加 DMDBA 用户
      • 1.2.3 目录及权限
      • 1.2.4 通过UUID挂载磁盘
      • 1.2.5 块设备的详细说明
      • 1.2.6 磁盘调度算法选择
      • 1.2.7 其他调整
        • 1.2.7.1 设置时间同步脚本
        • 1.2.7.2 检查并确认时区
        • 1.2.7.3 调整 Limits.conf
        • 1.2.7.4 调整 Sysctl.conf(必做)
        • 1.2.7.5 其他调整和处理(选做)
          • 1.2.7.5.1 格式化 - 块大小的选择
          • 1.2.7.5.2 确认login配置
          • 1.2.7.5.3 调整 Sysctl.conf
          • 1.2.7.5.4 关闭 selinux
          • 1.2.7.5.5 ☆ 必要的工具包安装
          • 1.2.7.5.6 清空防火墙策略
          • 1.2.7.5.7 定时清理 cache
          • 1.2.7.5.8 禁用透明大页
          • 1.2.7.5. 9 检查并确认语言设置
          • 1.2.7.5.10 检查并调整sshd配置
          • 1.2.7.5.11 设置磁盘预读
          • 1.2.7.5.12 调整core文件生成路径
  • 2 DM8部署实施流程
    • 2.1 流程
    • 2.2 部署规划
  • 3 安装数据库过程
    • 3.1 图形化安装
    • 3.2 命令行安装
  • 4 初始化数据库实例过程
    • 4.1 图形化创建实例和服务
    • 4.2 命令行创建实例和服务
  • 5 服务启停
    • 5.1 图形化方式
    • 5.2 命令行方式
  • 6 配置过程
    • 6.1 配置归档文件
    • 6.2 配置数据库定时备份
  • 7 优化过程
  • 8 管理过程
    • 8.1 图形化方式
    • 8.2 命令行方式
    • 8.3 创建用户和表空间

1 操作系统环境准备

1.1 Windows的两个注意事项

注意:这里讲的都是linux,针对Windows只需要注意下面两个点。

1、尽可能使用高性能的磁盘

2、在确认存储没有可持续电源时,请关闭磁盘写缓存。

关闭服务器磁盘写缓存的方法:

  1. 打开服务器设备管理器
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
  2. 在设备管理器中,磁盘驱动器下,对象的属性页面中,策略选项卡下的“启用设备上的写缓存(W)”默认的勾选,去掉并点击确定
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

1.2 Linux环境下的服务器确认

说明: 用户需要做好空间规划和确认,交付给数据库安装部署工程师的应该只是dmdba用户或者其他非root用户。 注意相关目录的权限需要授予给出用户的所有者权限。

必做项

1.2.1 操作系统目录划分

操作系统安装时,可按照自己的规划采取合适的配置策略,也可以参照如下方式:

名称 挂载点(建议) 参考描述 备注
根目录 / 大于50GB,系统主分区 最低配置
Boot /boot 200MB 最低配置
Swap 物理内存小于 16GB 时,建议为物理内存的两倍;超过 16GB时,建议和物理内存大小一致;超过32 GB时,建议为 32 GB。 最低配置
Home /home 10GB 最低配置
Usr /usr 10GB 最低配置
DM_HOME /dameng 建议为物理内存大小+50GB基础大小,并加上预计的归档留存大小,和备份所需大小。 数据库软件安装目录,即安装路径。
DM_DATA /data/dmdata 磁盘剩余大小,按数据库待存放数据大小为依据分配。 数据文件存放目录:可以包含数据文件、归档、备份等。

归档大小:

正式环境:需要保证至少有最近两个全备之间的所有归档(如一周进行一次全备,则至少保留10天之类的所有归档);

测试环境:适当留存10GB或者 20GB归档即可,用以支持物理备份。

备份大小:

正式环境:需要保留足够的备份。备份分为全量备份和增量备份,一般为每天一次增量备份,每周一次全量备份,建议至少保留一个月的所有备份,需要以及实际情况估算所需空间大小。

测试环境:至少保留一个全备,也应该养成定期备份的习惯。

磁盘分区方式:

选择 Create Custom Layout,并可以适当保留一些剩余空间,方便以后需要时使用。

其他:

(1)使用 df –h 查看磁盘挂载情况。

(2)根据数据库服务器配置规划安装路径、数据路径、备份路径。

(3)安装路径:建议放在本地盘(/home/dmdba/dmdbms)。

(4)数据路径:建议放在存储性能最好的地方,如磁盘阵列的挂载点下(/dmdata)。

(5)归档路径:建议放在数据路径下,避免误删(/data/dmdata/arch),建议单独挂载。

(6)备份路径:建议放在和数据不同的盘上(/data/dmdata/bak),建议单独挂载。

可以如下规划路径:

(1)安装路径:/home/dmdba/dmdbms

(2)数据路径:/data/dmdata

(3)归档路径:/data/dmdata/arch

(4)备份路径:/data/dmdata/bak

1.2.2 添加 DMDBA 用户

指定固定的组id和用户id,方便备份(操作系统备份、恢复后权限管理正确)。

groupadd dinstall -g 2001创建用户组dinstall

useradd -g dinstall dmdba -i 1001创建属于dinstall用户组的用户dmdba

passwd dmdba

输入一次密码

重新输入一次密码

创建成功

1.2.3 目录及权限

| --mkdir /home/dmdba/dmdbms

mkdir /data/dmdata/arch

mkdir /data/dmdata/bak

chown -R dmdba:dinstall /data/dmdata 修改/data/dmdata及其子目录的拥有者为dmdba,用户组为dinstall

chmod -R 775 /data/dmdata 修改/data/dmdata及其子目录权限

其后,则可切换 dmdba 用户,上传安装文件,进行数据库安装。

1.2.4 通过UUID挂载磁盘

UUID 全称是 Universally Unique Identifier,也就是说,每个分区有一个唯一的 UUID

值,Linux系统(红帽系列的Fedora,Cent

OS,或Debian系列的Ubuntu,LinuxMint,等等)都采用UUID方式挂载分区,避免发生分区识别混乱的问题。

fstab文件位于/etc/下,挂在分区的格式为:

# <file system> <mount point> <type> <options> <dump> <pass>

例如:

s_spec fs_file fs_type fs_options fs_dump fs_pass

/dev/hda1 / ext2 defaults 1 1

fs_spec -

该字段定义希望加载的文件系统所在的设备或远程文件系统,对于一般的本地块设备情况来说:IDE设备一般描述为/dev/hdXN,X是IDE设备通道(a,

b, or c),N代表分区号;SCSI设备一描述为/dev/sdaXN;

fs_file -

该字段描述希望的文件系统加载的目录点,对于swap设备,该字段为none;对于加载目录名包含空格的情况,用40来表示空格;

fs_type - 定义了该设备上的文件系统,一般常见的文件类型为ext2

(Linux设备的常用文件类型)、vfat(Windows系统的fat32格式)、NTFS、iso9600等;

fs_options -

指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来。对于大多数系统使用defaults就可以满足需要;

fs_dump -

该选项被dump命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设置该字段为0

;

fs_pass -

该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统/对应该字段的值应该为1,其他文件系统应该为2。若该文件系统无需在启动时扫描则设置该字段为0;

我们重新回到UUID这个主题上,一般情况下,安装的新系统,默认只会挂载根分区“/”及swap分区,可能还有“/home”分区。那么我们想要挂载其他已经存在的分区的时候,如何知道现有分区的UUID呢,以便我们通过修改/etc/fstab文件来达到启动系统后,自动挂载分区的目的。

1.通过查看/dev/disk/by-uuid/ 下的设备文件信息:

# ll -l /dev/disk/by-uuid/总用量 0

lrwxrwxrwx 1 root root 10 4月 8 2017 185900c8-ba6c-403e-96ee-844414c9d835 ->

…/…/sdb1

lrwxrwxrwx 1 root root 10 4月 8 2017 713dfd51-00ad-4500-aa03-e7846dc6de4c ->

…/…/sda3

lrwxrwxrwx 1 root root 10 4月 8 2017 831df52d-baad-4902-bcce-6128cec95411 ->

…/…/sdb2

lrwxrwxrwx 1 root root 10 4月 8 2017 c82632c8-8232-4dd1-a4e9-0c13d2001345 ->

…/…/sda1

lrwxrwxrwx 1 root root 10 4月 8 2017 f928a6a1-4f2e-4e69-8567-631648f0dc51 ->

…/…/sda2

2.通过blkid命令:

# blkid

/dev/sda2: UUID=“f928a6a1-4f2e-4e69-8567-631648f0dc51” TYPE=“ext4”

/dev/sda1: UUID=“c82632c8-8232-4dd1-a4e9-0c13d2001345” TYPE=“ext4”

/dev/sda3: UUID=“713dfd51-00ad-4500-aa03-e7846dc6de4c” TYPE=“swap”

/dev/sdb1: UUID=“185900c8-ba6c-403e-96ee-844414c9d835” TYPE=“ext4”

/dev/sdb2: UUID=“831df52d-baad-4902-bcce-6128cec95411” TYPE=“ext4”

UUID后,我们就可以编辑fstab文件来挂载分区。

编辑/etc/fstab文件:

#

UUID=f928a6a1-4f2e-4e69-8567-631648f0dc51 / ext4 defaults 1 1

UUID=c82632c8-8232-4dd1-a4e9-0c13d2001345 /boot ext4 defaults 1 2

UUID=713dfd51-00ad-4500-aa03-e7846dc6de4c swap swap defaults 0 0

UUID=185900c8-ba6c-403e-96ee-844414c9d835 /media/diskb1 ext4 defaults 0 0

UUID=831df52d-baad-4902-bcce-6128cec95411 /media/diskb2 ext4 defaults 0 0

tmpfs /dev/shm tmpfs defaults 0 0

devpts /dev/pts devpts gid=5,mode=620 0 0

sysfs /sys sysfs defaults 0 0

proc /proc proc defaults 0 0

编辑保存后,重启,如果在启动的时候,没有出现挂载失败信息,即挂载成功。

1.2.5 块设备的详细说明

Raid选择

  1. RAID选择

一、系统盘采用RAID1,数据盘采用RAID10。

二、不建议采用RAID5,RAID5的随机写性能相比RAID10差距很多,且数据库的大多数写操作均为随机写。若客户觉的RAID10浪费,可推荐使用SATA盘来做RAID10,也好过使用SAS盘做RAID5。

  1. RAID配置

一、要求RAID卡有BBU电池。

二、写策略为WRITE BACK WITH BBU或者WRITE BACK。

若写策略为WRITE THROUGH,磁盘的写性能非常差。若RAID卡没有BBU电池,在WRITE

BACK的策略下,异常断电会导致数据丢失,所以必须检查上述2项,保证磁盘的写性能。

fstab 文件 - 挂载选项

这是一个典型的挂载配置(以ext4 为例):

/dev/mapper/R0_2T /home/ssd-oldDisk/ ext4 defaults 0 0

/dev/sdb /home/dameng/hn/ ext4 defaults 0 0

但块设备的挂载,建议不要使用默认配置(defaults处,ext4 defaults 表示

rw,suid,dev,exec,auto,nouser,async),推荐设置为 defaults,noatime

(由于SSD的价格越来越便宜,建议有条件的用户,对数据库系统使用SSD磁盘,省直是FLASH闪存卡,这对数据库的性能将会有非常大的帮助。)

如果是 ssd,应确保 ssd 设置为 4K 对齐的情况下,添加了 discard

的挂载参数(如defaults,noatime,discard)。可以自行了解 SSD 的 TRIM 功能。

备注:

  1. 做了 raid 后,该参数无效。
  2. 内核版本低于 2.6.33 的,也不支持 TRIM (即 不支持 discard 参数)。

如果存储自带电源(应急电源)——

(非常重要,上线环境中,要求存储必须带应急电源,避免异常关机、掉电时,物理层面的高概率数据损坏。),且确认有效的情况下,还可以考虑添加如下参数,优化存储性能:

  • commit 参数(如 defaults,noatime,commit=60)

    该参数类似于IO操作的集合点,批量提交到块设备,默认是5秒,往大了改,能够有效提高性能。如果没有应急电源,应该使用默认值,且不能关闭文件系统日志。

  • barrier 参数(如noatime,barrier=0)。改参数,在ext4

    中默认开启,如果存储自带应急电源,可以关闭,以提高性能。

参考配置:defaults,commit=60,noatime,barrier=0

1.2.6 磁盘调度算法选择

注意:在Centos7操作系统环境下,默认的磁盘调度策略不需要调整(已经是deadline)

数据库服务器,建议使用 deadline 磁盘调度算法,具体缘由可自行查阅相关资料。

# 确认块设备1

[[email protected] log]# ps -ef|grep jbd2

root 4126 2 0 2017 ? 00:01:58 [jbd2/dm-0-8]

root 7300 2 0 2017 ? 00:00:00 [jbd2/sda1-8]

root 7302 2 0 2017 ? 02:03:39 [jbd2/dm-4-8]

root 7304 2 0 2017 ? 00:06:15 [jbd2/dm-2-8]

root 7307 2 0 2017 ? 05:57:00 [jbd2/dm-3-8]

root 11896 75490 0 14:29 pts/8 00:00:00 grep jbd2

确认块设备2(存储)

[[email protected] log]# multipath -ll

查看当前磁盘调度算法

[[email protected] log]# cat /sys/block/sda/queue/scheduler

noop anticipatory deadline [cfq]

修改对应磁盘调度算法为 deadline

[[email protected] log]# echo deadline >/sys/block/sda/queue/scheduler

确认修改后的磁盘调度算法

[[email protected] log] # cat /sys/block/sda/queue/scheduler

noop anticipatory [deadline] cfq

[[email protected] log] # cat /sys/block/dm-2/queue/scheduler

noop anticipatory deadline [cfq]

[[email protected] log] # echo deadline >/sys/block/dm-2/queue/scheduler

[[email protected] log] # cat /sys/block/dm-2/queue/scheduler

noop anticipatory [deadline] cfq

[[email protected] log] # cat /sys/block/dm-3/queue/scheduler

noop anticipatory deadline [cfq]

[[email protected] log] # echo deadline >/sys/block/dm-3/queue/scheduler

[[email protected] log] # cat /sys/block/dm-3/queue/scheduler

noop anticipatory [deadline] cfq

[[email protected] log] # echo deadline >/sys/block/dm-4/queue/scheduler

[[email protected] log] # cat /sys/block/dm-4/queue/scheduler

none

[[email protected] log] # cat /sys/block/dm-0/queue/scheduler

none

[[email protected] log]# |

同时,也可以通过修改内核引导参数,加入elevator= deadline 如:

vi /boot/grub/menu.lst

更改为: kernel /boot/vmlinuz-2.6.32-504.el6 ro root=LABEL=/ elevator=deadline rhgb quiet |

注意:如想通过这种方式调整,务必请操作系统工程师协助。因为,该操作如果修改错误,会导致服务器无法启动。

也就是通过这种方式,卸载rc.local保证每次重启服务器后,再次设置也是可取的:

echo ‘echo deadline > /sys/block/sdb/queue/scheduler’ >> /etc/rc.local

注:达梦数据库数据文件所在分区为/dev/sdb1

1.2.7 其他调整

1.2.7.1 设置时间同步脚本

系统内所有服务器,应该保持时间一致。如下以 10.10.10.10 为 ntp

服务器为例,(如果没有,则不设置,正式环境建议一点要配置)设置定时任务:

| [[email protected] ~]# crontab -l

# Time sync

0,10,20,30,40,50 * * * * /root/sync_time.sh

[[email protected] ~]# cat /root/sync_time.sh

#!/bin/bash

. /etc/profile

. /root/.bash_profile

ntpdate 10.10.10.10 ; hwclock -w

[[email protected] ~]# |

当然,可以配置NTP时间同步服务,只需要保证相关服务器时间一致即可:

任选一机器做源端:

cat /etc/ntp.conf

restrict default nomodify

server 127.127.1.0

fudge 127.127.1.0 stratum 10

其它机器做客户端:

cat /etc/ntp.conf

server 223.254.17.103

vi /etc/sysconfig/ntpd

SYNC_HWCLOCK=yes

设置每台机器的NTP服务

chkconfig ntpd on

service ntpd restart

1.2.7.2 检查并确认时区

sed -i ‘/^ZONE=/cZONE=“Asia/Shanghai”’ /etc/sysconfig/clock

1.2.7.3 调整 Limits.conf

下述设置已包括(umlimit -c -d -n -v -f -u ):

vim /etc/security/limits.conf添加以下内容

dmdba soft nice 0

dmdba hard nice 0

dmdba soft as unlimited

dmdba hard as unlimited

dmdba soft fsize unlimited

dmdba hard fsize unlimited

dmdba soft nproc 65536

dmdba hard nproc 65536

dmdba soft nofile 65536

dmdba hard nofile 65536

dmdba soft core unlimited

dmdba hard core unlimited

dmdba soft data unlimited

dmdba hard data unlimited

:x保存退出

注意事项(强调):如果有该文件:/etc/security/limits.d/90-nproc.conf,也需要修改。该文件主要限制 nproc,优先级比 /etc/security/limits.conf高,即:如果 /etc/security/limits.d/90-nproc.conf 设置了 nproc 参数时,生效的是/etc/security/limits.d/90-nproc.conf 文件中的限制,而不是/etc/security/limits.conf 的限制

vim /etc/security/limits.d/90-nproc.conf

* soft nproc 65536

1.2.7.4 调整 Sysctl.conf(必做)

vim /etc/sysctl.conf vm.swappiness = 0

:x保存退出

sysctl –p 立即生效 |

1.2.7.5 其他调整和处理(选做)

1.2.7.5.1 格式化 - 块大小的选择

这块没有特殊要求,用户自行考虑即可。只是对于条带大小,如果是OLAP形的应用系统,应该选择尽可能大的条带大小。

1.2.7.5.2 确认login配置

vim /etc/pam.d/login

添加以下内容

session required /lib64/security/pam_limits.so

session required pam_limits.so

:x保存退出

1.2.7.5.3 调整 Sysctl.conf

vim /etc/sysctl.conf

fs.file-max = 6815744

fs.aio-max-nr = 1048576

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 4194304

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

vm.dirty_background_ratio = 3

vm.dirty_ratio = 80

vm.dirty_expire_centisecs = 500

vm.dirty_writeback_centisecs = 100

:x保存退出

Sysctl –p 立即生效

1.2.7.5.4 关闭 selinux

|Setenforce 0

Vim /etc/sysconfig/selinux

将SELINUX的值由默认的enforcing修改为permissive

:x保存退出

1.2.7.5.5 ☆ 必要的工具包安装

如下软件包未安装,不一定影响数据库的运行使用,但是为了便于监控和排查,建议全部安装:

远控类:

#yum install vnc

#yum install xterm

#yum install ksh

#yum install pdksh

分析类:

#yum install perf

#yum install kernel-devel

#yum install kernel

#yum install kernel-headers

#yum install gdbm

#yum install gdb

#yum install cmake

#yum install gdbm-devel

#yum install binutils

#yum install compat-libstdc+±33

#yum install elfutils-libelf

#yum install elfutils-libelf-devel

#yum install gcc

#yum install gcc-c++

#yum install glibc

#yum install glibc-common

#yum install glibc-devel

#yum install glibc-headers

#yum install libaio

#yum install libaio-devel

#yum install libgcc-4.1.2

#yum install libstdc++

#yum install libstdc+±devel

#yum install make

#yum install numactl-devel

运维类:

#yum install dstat

#yum install expect

#yum install unzip

#yum install zip

#yum install sysstat

#yum install unixODBC

#yum install unixODBC-devel

1.2.7.5.6 清空防火墙策略

iptables –F Server iptables save

1.2.7.5.7 定时清理 cache

根据业务、场景情况,可以选择一天清理一次或者半小时、十分钟清理一次。下面是一个向服务器导入大量数据的场景,设置为

十分钟 清理一次:

# sync cache for load large date to dmserver

0,10,20,30,40,50 * * * * /root/sync_cache.sh

[[email protected] ~]# cat sync_cache.sh

sync

sync

echo 1 > /proc/sys/vm/drop_caches

[[email protected] ~]# |

1.2.7.5.8 禁用透明大页

cat /sys/kernel/mm/transparent_hugepage/enabled

[always] madvise never

–echo ‘echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled’ >>

/etc/rc.local

vi /etc/rc.d/rc.local

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then

echo never > /sys/kernel/mm/transparent_hugepage/enabled

fi

if test -f /sys/kernel/mm/transparent_hugepage/defrag; then

echo never > /sys/kernel/mm/transparent_hugepage/defrag

fi

chmod +x /etc/rc.d/rc.local

1.2.7.5. 9 检查并确认语言设置

不建议采用GBK,避免达梦运行日志中出现乱码,影响分析。

echo ‘export LANG=en_US.UTF-8’ >> /etc/profile

1.2.7.5.10 检查并调整sshd配置

为了解决某些情况下ssh连接慢的问题

sed -i ‘/^#GSSAPIAuthentication/cGSSAPIAuthentication no’ /etc/ssh/sshd_config

sed -i ‘/^GSSAPIAuthentication/cGSSAPIAuthentication no’ /etc/ssh/sshd_config

sed -i ‘/^#UseDNS/cUseDNS no’ /etc/ssh/sshd_config

sed -i ‘/^UseDNS/cUseDNS no’ /etc/ssh/sshd_config

1.2.7.5.11 设置磁盘预读

echo ‘/sbin/blockdev --setra 16386 /dev/sdb’ >> /etc/rc.local

注:达梦数据库数据文件所在分区为/dev/sdb1

1.2.7.5.12 调整core文件生成路径

vi /etc/sysctl.conf

kernel.core_pattern = core #默认值,在执行目录下

kernel.core_pattern=/v7000_backup/%e.core.%p 修改 /etc/sysctl.conf 并且 sysctl -a 不好使,通过下面命令再即时生效下

/sbin/sysctl -w kernel.core_pattern=/v7000_backup/%e.core.%p

说明:这里要求core文件生成路径的可用空间大小,要大于物理内存大小。

2 DM8部署实施流程

2.1 流程

  1. 规划部署实施信息。
  2. 规划程序安装路径。
  3. 规划数据库实例数据存放路径。
  4. 规划归档路径。
  5. 规划备份路径
  6. 规划实例配置
  7. 使用安装包进行安装。
  8. 创建实例数据库。
  9. 配置库名
  10. 配置实例名
  11. 配置端口号
  12. 配置数据库参数
  13. 配置数据库
  14. 设置归档
  15. 设置定时备份
  16. 设置定时清理备份
  17. 设置定时清理归档。
  18. 优化数据库
  19. 参数优化
  20. 兼容性参数
  21. 管理数据库
  22. 修改超级管理员用户
  23. 增加数据库管理员
  24. 增加系统管理员
  25. 增加普通用户

2.2 部署规划

系统配置规划

内存大小 128
CPU 64æ ¸
磁盘空间 1T

路径规划

安装路径 /home/dmdba/dmdbms
数据库实例路径 /data/dmdata
归档路径 /data/dmdata/arch
备份路径 /data/dmdata/bak

实例规划

库名 DMOA
实例名 DMOA
端口号 5236
页大小 16
编码格式 GB18030
大小写敏感 是

配置规划

归档文件大小 512
归档最大大小 10240
定时备份时间间隔 24h
定时清理备份时间范围 24*7
定时清理归档时间范围 24*3

优化规划

数据库内存占总内存比例 80%
数据库兼容性参数 兼容ORACLE

管理规划

超级管理员账号密码 SYSDBA/SYSDBA123
新建数据库管理员 DMDBA/GZ_DMDBA2021
新建用户管理员 USERDBA/User_dba
新建系统用户1 USER_OA
新建系统用户2 USER_MAIL

3 安装数据库过程

3.1 图形化安装

  1. 创建组和用户

    groupadd dinstall

    useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba

    passwd dmdba

    (根据系统提示进行密码设置)

  2. 检查操作系统限制(ulimit - a)和磁盘大小是否符合项目需求

    参数使用限制:

    A、data seg size

    data seg size (kbytes, -d)

    建议用户设置为 1048576(即 1GB)以上或

    unlimited(无限制),此参数过小将导致数据库启动失败。

    B、file size

    file size(blocks, -f)

    建议用户设置为 unlimited(无限制),此参数过小将导致数据库安装或初始化失败。

    C、 open files

    open files(-n)

    建议用户设置为 65536 以上或 unlimited(无限制)。

    D、virtual memory

    virtual memory (kbytes, -v)

    建议用户设置为 1048576(即 1GB)以上或

    unlimited(无限制),此参数过小将导致数据库启动失败。

    如 果 用 户 需 要 为 当 前 安 装 用 户 更 改 ulimit 的 资 源 限 制 , 请 修

    改 文 件/etc/security/limits.conf。

  3. 给安装包dmdba权限并切换用户

    chown dmdba:dinstall DMInstall.bin

    chmod +x DMInstall.bin

    su – dmdba

  4. 安装数据库

    执行:./ DMInstall.bin

    A、选择语言和时区

    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
    B、欢迎界面
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
    C、许可证协议
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
    D、组件信息
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
    E、验证key文件
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

    F、选择安装方式

    DM安装程序提供四种安装方式:“典型安装”、“服务器安装”、“客户端安装”和“自定义安装”,用户可根据实际情况灵活地选择。如下图所示:

    典型安装包括:服务器、客户端、驱动、用户手册、数据库服务。

    服务器安装包括:服务器、驱动、用户手册、数据库服务。

    客户端安装包括:客户端、驱动、用户手册。

    自定义安装包括:根据用户需要勾选组件,可以是服务器、客户端、驱动、用户手册、数据库服务中的任意组合。

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
**G、选择安装目录**
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
H、安装前小结
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
I、安装
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
J、用root执行以下脚本
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

3.2 命令行安装

  1. 执行安装文件

[[email protected] test]$ ./DMInstall.bin -i

Please select the installer’s language (E/e:English C/c:Chinese) [E/e]:c

解压安装程序…

是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n

是否设置时区? (Y/y:是 N/n:否) [Y/y]:

设置时区:

请选择设置时区 9:21

安装类型:

1 典型安装

2 服务器

3 客户端

4 自定义

请选择安装类型的数字序号 [1 典型安装]:1

所需空间: 828M

请选择安装目录 [/home/dmdba/dmdbms]:/home/dmdba/dmdbms

可用空间: 13T

是否确认安装路径(/home/dmdba/dmdbms)? (Y/y:是 N/n:否) [Y/y]:y

安装前小结

安装位置: /data/dmdata

所需空间: 828M

可用空间: 13T

版本信息:

有效日期:

安装类型: 典型安装

是否确认安装? (Y/y:是 N/n:否):y

2019-07-28 22:04:37

[INFO] 安装 default 模块…

2019-07-28 22:04:37

[INFO] 安装达梦数据库…

2019-07-28 22:04:39

[INFO] 安装 server 模块…

2019-07-28 22:04:39

[INFO] 安装 client 模块…

2019-07-28 22:04:39

[INFO] 安装 drivers 模块…

2019-07-28 22:04:39

[INFO] 安装 manual 模块…

2019-07-28 22:04:39

[INFO] 安装 service 模块…

2019-07-28 22:04:41

[INFO] 移动ant日志文件。

2019-07-28 22:04:41

[INFO] 安装达梦数据库完成。

请以root系统用户执行命令:

/home/dmdba/script/root/root_installer.sh

安装结束

  1. 用root执行root_installer.sh脚本,数据库安装即可完成

[[email protected] test]# /home/dmdba/script/root/root_installer.sh

移动 /home/dmdba/bin/dm_svc.conf 到/etc目录

修改服务器权限

创建DmAPService服务

创建服务(DmAPService)完成

启动DmAPService服务

4 初始化数据库实例过程

4.1 图形化创建实例和服务

1、开始初始化

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

2、创建一个数据库实例

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

3、选择目录

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

4、按要求设置数据库名和数据库实例名称

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

5、设置控制文件、数据文件等

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
6、. 按要求设置页大小16、字符集GB18030、大小写敏感
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
7、按要求设定sysdba密码
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
8、是否创建示例库,默认是不创建
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
9、初始化信息
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
10、开始初始化
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
11、用root用户运行
           
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

4.2 命令行创建实例和服务

  1. 按要求创建数据库实例

[[email protected] bin]$ ./dminit path=/data/dmdata db_name=DMOA instance_name=DMOA

CHARSET=0 PAGE_SIZE=16 CASE_SENSITIVE=1 SYSDBA_PWD=SYSDBA123 port_num=5236

initdb V7.6.0.137-Build(2019.02.18-102954)ENT

db version: 0x7000a

file dm.key not found, use default license!

License will expire on 2020-02-18

log file path: /data/dmdata/DMOA/DMOA01.log

log file path: /data/dmdata/DMOA/DMOA02.log

write to dir [/data/dmdata/DMOA].

create dm database success. 2019-07-29 10:45:36

  1. 注册数据库服务
  2. 切换到root用户
  3. 进入到/home/dmdba/script/root
  4. 执行dm_service_installer.sh文件

[[email protected] root]# ./dm_service_installer.sh -t dmserver -dm_ini

/data/mdata/DMOA/dm.ini -p DMOAs

Created symlink from

/etc/systemd/system/multi-user.target.wants/DmServiceDMOA.service to

/usr/lib/systemd/system/DmServiceDMOA.service.

创建服务(DmServiceDMOA)完成

5 服务启停

5.1 图形化方式

  1. 进入到/home/dmdba/dmdbms/tool
  2. 执行脚本dmservice.sh

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bmoHJn9r-1640412163608)(media/0834d2f4f0d5ee6e406a732554b91a87.png)]

5.2 命令行方式

[[email protected] test]# service DmServiceDMOA start

6 配置过程

6.1 配置归档文件

①按要求配置数据库归档(方式一)

  1. 进入到数据文件目录(/data/dmdata/DMOA)
  2. 打开ini参数(ARCH_INI=1)
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
  3. 配置dmarch.ini文件
    DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

D、重启数据库,归档配置完成

②按要求配置数据库归档(方式二)

修改数据库为 MOUNT 状态。

SQL>ALTER DATABASE MOUNT;

配置本地归档。

SQL>ALTER DATABASE ADD ARCHIVELOG ‘DEST = /data/dmdata/arch, TYPE = local,

FILE_SIZE = 512, SPACE_LIMIT = 10240’;

开启归档模式。

SQL>ALTER DATABASE ARCHIVELOG;

修改数据库为 OPEN 状态。

SQL>ALTER DATABASE OPEN;

6.2 配置数据库定时备份

①命令行方式

SP_INIT_JOB_SYS(1); --开启代理作业

–定时每天运行,进行增量备份(白天)

call

SP_CREATE_JOB(‘JOB_INCREMENT_BAK_TIMELY_DAY’,1,0,‘’,0,0,‘’,0,‘定时增量备份’);

call SP_JOB_CONFIG_START(‘JOB_INCREMENT_BAK_TIMELY_DAY’);

call SP_ADD_JOB_STEP(‘JOB_INCREMENT_BAK_TIMELY_DAY’, ‘STEP_INCREMENT_BAK’,

5, ‘/data/dmdata/bak’, 1, 2, 0, 0, NULL, 0);

–call SP_ADD_JOB_STEP(‘JOB_INCREMENT_BAK_TIMELY_DAY’, ‘STEP_INCREMENT_BAK’, 5,

‘/data/dmdata/bak’, 1, 2, 0, 0, NULL, 0);

call SP_ADD_JOB_SCHEDULE(‘JOB_INCREMENT_BAK_TIMELY_DAY’,

‘SCHEDULE_INCREMENT_BAK’, 1, 1, 1, 0, 0, ‘12:05:56’, NULL, ‘2019-07-29

21:05:57’, NULL, ‘’);

call SP_JOB_CONFIG_COMMIT(‘JOB_INCREMENT_BAK_TIMELY_DAY’);

  1. 每周清理备份文件

–定时每周日运行,删除前7天的备份,包括全量和增量

call SP_CREATE_JOB(‘JOB_DEL_BAK_TIMELY’,1,0,‘’,0,0,‘’,0,‘定时删除备份’);

call SP_JOB_CONFIG_START(‘JOB_DEL_BAK_TIMELY’);

call SP_ADD_JOB_STEP(‘JOB_DEL_BAK_TIMELY’, ‘STEP_DEL_BAK’, 0,

‘SP_BATCH_DEL_BAK(’‘DAMENG’‘, ‘’’‘, 1, sysdate-7, -1);’, 1, 2, 0, 0, NULL,

0); --BAK1备份

call SP_ADD_JOB_SCHEDULE(‘JOB_DEL_BAK_TIMELY’, ‘SCHEDULE_DEL_BAK’, 1, 2, 1,

1, 0, ‘00:05:56’, NULL, ‘2019-07-29 21:05:57’, NULL, ‘’);

call SP_JOB_CONFIG_COMMIT(‘JOB_DEL_BAK_TIMELY’);

  1. 每三天清理一次归档文件

–定时每周日运行,删除前3天的归档日志

–call SP_DROP_JOB(‘JOB_DEL_ARCH_TIMELY’);

call SP_CREATE_JOB(‘JOB_DEL_ARCH_TIMELY’,1,0,‘’,0,0,‘’,0,‘定时删除备份’);

call SP_JOB_CONFIG_START(‘JOB_DEL_ARCH_TIMELY’);

call SP_ADD_JOB_STEP(‘JOB_DEL_ARCH_TIMELY’, ‘STEP_DEL_ARCH’, 0,

‘SF_ARCHIVELOG_DELETE_BEFORE_TIME(SYSDATE - 3);’, 1, 2, 0, 0, NULL, 0);

call SP_ADD_JOB_SCHEDULE(‘JOB_DEL_ARCH_TIMELY’, ‘SCHEDULE_DEL_ARCH’, 1, 2,

1, 1, 0, ‘00:05:56’, NULL, ‘2019-07-29 21:05:57’, NULL, ‘’);

call SP_JOB_CONFIG_COMMIT(‘JOB_DEL_ARCH_TIMELY’);

②图形化方式

7 优化过程

根据数据库服务器配置情况修改几个关键的 INI

参数,充分发挥硬件性能,给出几个关键参数的推荐配置。

达梦数据库安装完成后需要对一些影响性能的关键参数进行配置,因为安装程序给出的默认配置是比较保守的,特别是在配置较高的数据库服务器上,无法重复发挥出硬件性能。

需要调整的配置参数包括以下几个方面:内存相关参数,IO 相关参数,CPU 相关参数,

本节通过一个具体的例子来给出一些推荐配置。

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

8 管理过程

8.1 图形化方式

进入到/home/dmdba/dmdbms/tool目录下,打开manager,即可进行数据库管理操作

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程
DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

8.2 命令行方式

[[email protected] bin]$ ./disql SYSDBA/SYSDBA123:5236

服务器[LOCALHOST:5236]:处于普通打开状态

登录使用时间: 5.729(毫秒)

disql V7.6.0.137-Build(2019.02.18-102954)ENT

SQL>

8.3 创建用户和表空间

先创建表空间

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

创建用户,表空间和索引表空间那一栏选择刚刚创建的表空间,在这个用户下建的所有的对象都会默认放在这个表空间下。

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

按应用场景选择权限

DM單機安裝部署1 作業系統環境準備2 DM8部署實施流程3 安裝資料庫過程4 初始化資料庫執行個體過程5 服務啟停6 配置過程7 優化過程8 管理過程

社区地址:https://eco.dameng.com

dba