目录
5、配置MAL系统配置文件dmmal.ini(所有实例一致)
前言
共享存储集群DSC主备(DMDSC-DW)
一、配置规划
实例 | MAL_INST_HOST | MAL_HOST | MAL_PORT | MAL_INST_PORT | MAL_DW_PORT | MAL_INST_DW_PORT | OGUID |
Dmdsc1 | 192.168.13.229 | 10.10.10.81 | 9236 | 5236 | 3567 | 4567 | 333333 |
Dmdsc2 | 192.168.13.240 | 10.10.10.82 | 9236 | 5236 | 3567 | 4567 | 333333 |
Dmdsc1rw | 192.168.13.227 | 10.10.10.71 | 9236 | 25236 | 3567 | 4567 | 333333 |
Dmdsc2rw | 192.168.13.228 | 10.10.10.72 | 9236 | 25236 | 3567 | 4567 | 333333 |
二、操作系统配置
1.创建用户和组
groupadd dinstall
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
passwd dmdba
2.创建目录并授权
mkdir /dm8
mkdir /dmdata
mkdir /dmarch
mkdir /dmbak
chown -R /dm8
chown -R /dmdata
chown -R /dmarch
chown -R /dmbak
3.修改用户资源限制
vim /etc/security/limits.conf
添加:
dmdba soft core unlimited
dmdba hard core unlimited
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba soft nproc 65536
dmdba hard nproc 65536
dmdba soft stack 65536
dmdba hard stack 65536
4.添加环境变量
vi /home/dmdba/.bash_profile
添加:
export DM_HOME=/dm8
export PATH=$PATH:$DM_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin
5.关闭防火墙
systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld
6.关闭selinux
echo "SELINUX=disabled">/etc/selinux/config
echo "SELINUXTYPE=targeted" >> /etc/selinux/config
cat /etc/selinux/config
setenforce 0
三、数据库安装
1.上传挂载安装镜像
mount -o loop dm8_20200930_x86_rh6_64_ent_8.1.1.134.iso /mnt
su - dmdba
cd /mnt
./DMInstall.bin –i
安装结束后会提示
请以root系统用户执行命令:
/dm8/script/root/root_installer.sh
安装结束
2.注册DMAP服务
切换到root用户
[root@dmdb01 dmtest]# /dm8/script/root/root_installer.sh
##创建并启动DmAPService服务
DmAP是数据库备份恢复需要依赖的一个服务
启动数据库:
su - dmdba
cd /dm8/bin
./DmAPService start
关闭数据库:
./DmAPService stop
查看服务进程:
ps -ef|grep dmap
3.初始化数据库实例
使用dmdba用户,进入bin目录
dminit path=/dmdata db_name=dmdsc1rw instance_name=dmdsc1rw LOG_SIZE=2048 PAGE_SIZE=32 charset=1
dminit path=/dmdata db_name=dmdsc2rw instance_name=dmdsc1rw LOG_SIZE=2048 PAGE_SIZE=32 charset=1
四、DSC主备配置
1、DSC所有节点停止数据库服务
注:需要先关闭CSS自动拉起功能,否则dmserver会自动启动
./DmServiceDMDSC1 stop
./DmServiceDMDSC2 stop
2、DSC主库备份
DSC集群通过dmrman备份
./dmrman use_ap=2 dcr_ini=/dmdata/dmdsc/dmdcr.ini
backup database '/dmdata/dmdsc/dmdsc1/dm.ini' backupset '/dmdata/fulldsc1';
repair archive log database '/dmdata/dmdsc/dmdsc1/dm.ini';
backup database '/dmdata/dmdsc/dmdsc2/dm.ini' backupset '/dmdata/fulldsc1';
repair archive log database '/dmdata/dmdsc/dmdsc2/dm.ini';
restore database '/dmdata/dmdsc1rw/dm.ini' from backupset '/dmdata/bakfull';
recover database '/dmdata/dmdsc1rw/dm.ini' from backupset '/dmdata/bakfull';
recover database '/dmdata/dmdsc1rw/dm.ini' update db_magic;
restore database '/dmdata/dmdsc2rw/dm.ini' from backupset '/dmdata/bakfull';
recover database '/dmdata/dmdsc2rw/dm.ini' from backupset '/dmdata/bakfull';
recover database '/dmdata/dmdsc2rw/dm.ini' update db_magic;
3、各实例配置dm.ini
vi /dmdata/dmdsc/dmdsc1/dm.ini
MAL_INI = 1
ARCH_INI=1
ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态/OGUID
ENABLE_OFFLINE_TS = 2 #不允许备库 OFFLINE 表空间
4、配置归档日志dmarch.ini
主库dsc1/dsc2:
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = dmdsc1rw/dmdsc2rw
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dmarch
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 0
备库dsc1rw/dsc2rw:
vi /dmdata/dmdsc1rw/dmarch.ini
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME #实时归档类型
ARCH_DEST = dmdsc1/dmdsc2#实时归档目标实例名
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dmarch3
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 0
5、配置MAL系统配置文件dmmal.ini(所有实例一致)
[mal_inst1]
mal_inst_name = DMDSC1
mal_host = 10.10.10.81
mal_port = 9236
MAL_INST_HOST = 192.168.13.239 #实例的对外服务 IP 地址
MAL_INST_PORT = 5236 #实例的对外服务端口,和 dm.ini 中的 PORT_NUM 一致
MAL_DW_PORT = 3567 #实例本地的守护进程监听 TCP 连接的端口
MAL_INST_DW_PORT = 4567 #实例监听守护进程 TCP 连接的端口
[mal_inst2]
mal_inst_name = DMDSC2
mal_host = 10.10.10.82
mal_port = 9236
MAL_INST_HOST = 192.168.13.240
MAL_INST_PORT = 5236 #实例的对外服务端口,和 dm.ini 中的 PORT_NUM 一致
MAL_DW_PORT = 3567
MAL_INST_DW_PORT = 4567
[MAL_INST3]
MAL_INST_NAME = dmdsc1rw
MAL_HOST = 10.10.10.71
MAL_PORT = 9236
MAL_INST_HOST = 192.168.13.227
MAL_INST_PORT = 25236
MAL_DW_PORT = 3567
MAL_INST_DW_PORT = 4567
[MAL_INST4]
MAL_INST_NAME =dmdsc2rw
MAL_HOST = 10.10.10.72
MAL_PORT = 9236
MAL_INST_HOST = 192.168.13.228
MAL_INST_PORT = 25236
MAL_DW_PORT = 3567
MAL_INST_DW_PORT = 4567
6、配置守护进程配置文件dmwatcher.ini
主节点dsc1:
vi /dmdata/dmdsc/dmdsc1/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL #全局守护类型
DW_MODE = MANUAL #自动切换模式
DW_ERROR_TIME = 60 #远程守护进程故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 35 #本地实例故障认定时间
INST_INI = /dmdata/dmdsc/dmdsc1/dm.ini#dm.ini 配置文件路径
DCR_INI = /dmdata/dmdsc/dmdcr.ini #dmdcr.ini 配置文件路径
INST_OGUID = 333333 #守护系统唯一 OGUID 值
INST_AUTO_RESTART = 0 #关闭实例的自动启动功能
主节点dsc2:
vi /dmdata/dmdsc/dmdsc2/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL #全局守护类型
DW_MODE = MANUAL #自动切换模式
DW_ERROR_TIME = 60 #远程守护进程故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 35 #本地实例故障认定时间
INST_INI = /dmdata/dmdsc/dmdsc2/dm.ini#dm.ini 配置文件路径
DCR_INI = /dmdata/dmdsc/dmdcr.ini #dmdcr.ini 配置文件路径
INST_OGUID = 333333 #守护系统唯一 OGUID 值
INST_AUTO_RESTART = 0 #关闭实例的自动启动功能
备库dsc1rw:
vi /dmdata/dmdsc1rw/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL #全局守护类型
DW_MODE = MANUAL #自动切换模式
DW_ERROR_TIME = 60 #远程守护进程故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 35 #本地实例故障认定时间
INST_INI = /dmdata/dmdsc1rw/dm.ini#dm.ini 配置文件路径
INST_OGUID = 333333 #守护系统唯一 OGUID 值
INST_AUTO_RESTART = 0 #关闭实例的自动启动功能
备库dsc2rw:
vi /dmdata/dmdsc2rw/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL #全局守护类型
DW_MODE = MANUAL #自动切换模式
DW_ERROR_TIME = 60 #远程守护进程故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 35 #本地实例故障认定时间
INST_INI = /dmdata/dmdsc2rw/dm.ini#dm.ini 配置文件路径
INST_OGUID = 333333 #守护系统唯一 OGUID 值
INST_AUTO_RESTART = 0 #关闭实例的自动启动功能
7、启动数据库实例
./dmserver /dmdata/dmdsc/dmdsc1/dm.ini dcr_ini=/dmdata/dmdsc/dmdcr.ini mount
./dmserver /dmdata/dmdsc/dmdsc2/dm.ini dcr_ini=/dmdata/dmdsc/dmdcr.ini mount
./dmserver /dmdata/dmdsc1rw/dm.ini dcr_ini=/dmdata/dmdsc/dmdcr.ini mount
./dmserver /dmdata/dmdsc2rw/dm.ini dcr_ini=/dmdata/dmdsc/dmdcr.ini mount
主库dsc1、dsc2:
./disql SYSDBA/SYSDBA
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
sp_set_oguid(333333);
alter database primary;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
备库dsc1rw、dsc2rw:
./disql SYSDBA/SYSDBA
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
sp_set_oguid(333333);
alter database standby;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
8、启动守护进程
主库dsc1、dsc2:
./dmwatcher /dmdata/dmdsc/dmdsc1/dmwatcher.ini
./dmwatcher /dmdata/dmdsc/dmdsc2/dmwatcher.ini
备库dsc1rw、dsc2rw:
./dmwatcher /dmdata/dmdsc1rw/dmwatcher.ini
./dmwatcher /dmdata/dmdsc2rw/dmwatcher.ini
9、配置监视器配置文件dmmonitor.ini
建议单独一台服务器做确认监视器(本例为普通监视器模式)
vi /dmdata/dmdsc/dmdsc1/dmmonitor.ini
MON_DW_CONFIRM = 0 #确认监视器模式
MON_LOG_PATH = /dmdata/dmdsc/montor_log #监视器日志文件存放路径
MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件 MON_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
MON_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间
[GRP1]
MON_INST_OGUID = 45331 #组 GRP1 的唯一 OGUID 值 #以下配置为监视器到组 GRP1 的守护进程的连接信息,以―IP:PORT‖的形式配置 #IP 对应 dmmal.ini 中的 MAL_HOST,PORT 对应 dmmal.ini 中的 MAL_DW_PORT
MON_DW_IP = 10.10.10.71/10.10.10.72:3567
MON_DW_IP = 10.10.10.81/10.10.10.82:3567
前台启动dmmonitor,查看集群状态
./dmmonitor /dmdata/dmmpp/dmmonitor.ini
总结
更多资讯请上达梦技术社区了解:https://eco.dameng.com