- 安装前准备
1.1 数据库部署规划
相关路径规划,根据实际情况去调整
安装软件存放目录 /dm/dmiso/dmsoft
数据库安装目录 /dm/dmdbms
数据文件目录 /dm/dmdata
归档文件目录 /dm/dmarch
备份文件目录 /dm/dmbak
慢日志 FILE_PATH = /dm/dmdbms/log/slog
1.2 检查服务器相关资源信息
用户在安装 DM 数据库之前需要检查或修改操作系统的配置,以保证 DM 数 据库能够正确安装和运行。
本文以演示环境如下:
检查 Linux(Unix)系统信息
获取系统位数
getconf LONG_BIT
查询操作系统 release 信息
lsb_release -a
查询系统信息
cat /etc/issue
1.3创建安装数据库用户
groupadd dinstall -g 2001
useradd -G dinstall -m -d /home/dmdba -s /bin/bash -u 2001 dmdba
passwd dmdba
密码:Hn@dameng123
1.4创建数据库部署目录
创建目录:如能使用dmdba进行创建目录的话使用dmdba,后续无须重新修改用户/用户组
mkdir -p /dm/dmdata
mkdir -p /dm/dmarch
mkdir -p /dm/dmbak
mkdir -p /dm/dmiso/dmsoft
mkdir -p /dm/dmdbms —该目录空间够30G即可
修改用户/用户组
chown -R dmdba:dinstall /dm/dmdata
1.5挂载磁盘管理
LVM管理方式
1.创建PV
pvcreate /dev/vdc
2.创建VG
vgcreate vg_dm /dev/vdc
3.创建LV(磁盘预留10G空间2560个PE,空间满时可以临时扩容)
查看pe(默认1PE=4Mib),可以使用两种方法
vgdisplay vg_dm
①PE方式
lvcreate -l 192000 -n lv_dmdata vg_dm
lvcreate -l 115200 -n lv_dmbak vg_dm
lvcreate -l 76800 -n lv_dmarch vg_dm
②具体容量方式
lvcreate -L 1020G -n lv_dmdata vg_dm
lvcreate -L 1020G -n lv_dmbak vg_dm
lvcreate -L 1020G -n lv_dmarch vg_dm
4.格式化逻辑卷LV
mkfs.ext4 /dev/mapper/vg_dm-lv_dmdata
mkfs.ext4 /dev/mapper/vg_dm-lv_dmbak
mkfs.ext4 /dev/mapper/vg_dm-lv_dmarch
///mkfs.xfs /dev/mapper/vg_dm-lv_dm
5.挂载 因目录在1.4已经创建,可忽略
mkdir -p /dm/dmdata
mkdir -p /dm/dmarch
mkdir -p /dm/dmbak
6.设置自动挂载
查看lv的UUID
blkid -s UUID /dev/mapper/vg_dm-lv_dm
根据查询出lv的UUID修改/etc/fstab
vi /etc/fstab
hdd:
UUID=“373a3542-f227-4cef-9e2b-e14b62f69a2b” /dm/dmbak ext4 defaults,noatime 0 0
ssd:
UUID=1f39a60b-c044-44f3-a3ba-f27db67f978e /dm ext4 defaults,noatime,discard 0 0
1.6修改磁盘调度方法
查看系统支持的磁盘调度算法(如果查不到具体调度算法,那么使用的就是默认调度算法)
dmesg | grep -i scheduler
[ 0.631429] io scheduler noop registered
[ 0.631431] io scheduler deadline registered (default)
[ 0.631449] io scheduler cfq registered
[ 0.631452] io scheduler mq-deadline registered
[ 0.631454] io scheduler kyber registered
查看特定磁盘调度方式(例如查看sda磁盘)
cat /sys/block/sda/queue/scheduler
需要修改调度算法为 deadline
永久修改磁盘调度
Linux7:
grubby --update-kernel=ALL --args=“elevator=deadline”
reboot
重启之后,查看调度方法:
#cat /sys/block/sda/queue/scheduler
1.7测试磁盘I/O性能
①使用dd命令测试性能
②使用FIO测试磁盘性能
1.8修改相关系统配置文件
检查/proc/sys/vm/overcommit_memory
Linux操作系统要注意检查/proc/sys/vm/overcommit_memory是否设置为0。
设置为1或者2时可能会出现操作物理内存有空余,但数据库服务无法申请内存的严重问题。
cat /proc/sys/vm/overcommit_memory
临时修改:
echo 0 > /proc/sys/vm/overcommit_memory
永久修改:
编辑/etc/sysctl.conf ,修改vm.overcommit_memory=0,然后执行sysctl -p 使配置文件生效。
检查和关闭防火墙
systemctl list-unit-files | grep fire
systemctl stop firewalld.service
systemctl disable firewalld.service
关闭Selinux
vim /etc/selinux/config
SELINUX=disable
修改/etc/security/limits.conf
添加:
vi /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
切换到dmdba检查资源限制是否生效
$ ulimit -a
修改内核参数
#vi /etc/sysctl.conf
fs.file-max = 6815744
fs.aio-max-nr = 1048576
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_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
vm.swappiness=10
vm.dirty_background_ratio = 0
vm.min_free_kbytes = 2097152
kernel.core_pattern = /dmdata/core.%p
使内核参数生效:
sysctl -p
1.9网络测试
网络测试
scp -P 33022 testfile* 10.5.0.124:/dm/iotest/
2.1使用root用户挂载数据库软件iso文件
先把iso文件上传至服务器(例如上传至dmdba家目录下)
把iso挂载到/dm/dmiso
mount -o loop dm8_xxx.iso /dm/dmiso
进入/dm/dmiso,把DMInstall.bin复制到/dm/dmiso/dmsoft
cp /dm/dmiso/DMInstall.bin /dm/dmiso/dmsoft
修改用户和用户组为安装数据库的用户、用户组
#chown -R dmdba.dinstall /dm/dmdata /dm/dmarch /dm/dmbak /dm/dmdbms
2.安装数据库
2.1执行DMInstall.bin进行安装
在安装数据库前注意用户是否为dmdba,不要使用root用户进行安装
cd /dm/dmiso/dmsoft
./DMInstall.bin -i
在安装时设置目录为:/dm/dmdbms,该目录下不允许有文件或目录存在,如有会提示,无法继续下一步,删除重新确认目录为/dm/dmdbms即可
安装完成后按照提示使用root执行相关脚本
2.2设置环境变量
vi ~/.bash_profile
export DM_HOME=“/home/dmdba/dmdbms” --该路径为例子,不用进行修改
export LD_LIBRARY_PATH=“
L
D
L
I
B
R
A
R
Y
P
A
T
H
:
LD_LIBRARY_PATH:
LDLIBRARYPATH:DM_HOME/bin”
export PATH=
P
A
T
H
:
PATH:
PATH:DM_HOME/bin:$DM_HOME/tool
2.3初始化实例
cd /dm/dmdbms/bin
./dminit path=/dm/dmdata DB_NAME=GXZY INSTANCE_NAME=GXZY01 PORT_NUM=5136 EXTENT_SIZE=32 PAGE_SIZE=32 LOG_SIZE=2048 CASE_SENSITIVE=Y CHARSET=0 LENGTH_IN_CHAR=0 BLANK_PAD_MODE=0 SYSDBA_PWD=“Sysdba@12345” SYSAUDITOR_PWD=“Sysauditor@12345” ELOG_PATH= /dm/dmdbms/log/slog
2.4配置慢日志
配置慢日志
mkdir -p /dm/dmdbms/log/slog
$ cd /dm/dmdata//DAMENG
$ vi /dm/dmdata//DAMENG/sqllog.ini
BUF_TOTAL_SIZE = 10240
BUF_SIZE = 1024
BUF_KEEP_CNT = 6
[SLOG_ALL]
FILE_PATH = …/log/slog
PART_STOR = 1
SWITCH_MODE = 2
SWITCH_LIMIT = 512
ASYNC_FLUSH = 1
FILE_NUM = 20
ITEMS = 0
SQL_TRACE_MASK = 2:3:25
MIN_EXEC_TIME = 1500
USER_MODE = 0
USERS =
2.5注册服务
#cd /dm/dmdbms/script/root/
DM8注册服务
#./dm_service_installer.sh -t dmserver -p dmdb -dm_ini /dmdata/dmdb/dm.ini -m open
启动数据库服务
#systemctl start DmServicedmdb
DM7注册服务的命令为
./dm_service_installer.sh -t dmserver -p dmdb -i /dmdata/dmdb/dm.ini -m open
注意-dm_ini 和 -i
确认数据库能够正常登录
$ cd /dm/dmdbms/bin
$ ./disql SYSDBA/‘“Hh@12345”’@localhost:5136
2.6开启归档
登入数据库
$ cd /dm/dmdbms/bin
$ ./disql SYSDBA/‘“Hh@12345”’@localhost:5136
开启归档
alter database mount;
Alter database add archivelog ‘dest=/dm/dmarch ,TYPE=local,FILE_SIZE=1024,SPACE_LIMIT=10240’;
alter database archivelog;
alter database open;
https://eco.dameng.com



