前言
本篇文章讲述的是在达梦dsc集群环境上在搭建dw备机
dsc部署详见:https://blog.csdn.net/Cj12315/article/details/124898796
一、DSC集群做备份并拷贝至备库
进入数据库安装bin目录使用dmrman进行备份
cd /home/dmdba/dmdbms/bin
./dmrman use_ap=2 dcr_ini=/home/dmdba/conf/dmdcr.ini
RMAN> BACKUP DATABASE '/home/dmdba/conf/dsc0_config/dm.ini' BACKUPSET '/dmdata/dmbak/db_full_1028';
拷贝备份集到DW备库:
scp -r /dmdata/dmbak/db_full_1028 dmdba@10.9.150.33:/dmdata/dmbak
二、DSC集群配置
2.1修改dm.ini
节点1:
vi /home/dmdba/conf/dsc0_config/dm.ini
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
节点2:
vi /home/dmdba/conf/dsc1_config/dm.ini
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
2.2新建dmmal.ini
在dsc0_config目录下新建,方便管理配置文件
节点1:
vi /home/dmdba/conf/dsc0_config/dmmal.ini
MAL_CHECK_INTERVAL = 30
MAL_CONN_FAIL_INTERVAL = 10
[MAL_INST0]
MAL_INST_NAME = DSC0
MAL_HOST = 10.8.150.31
MAL_PORT = 9300
MAL_INST_HOST = 10.8.150.31
MAL_INST_PORT = 5236
MAL_DW_PORT = 8236
MAL_INST_DW_PORT = 7236
[MAL_INST1]
MAL_INST_NAME = DSC1
MAL_HOST = 10.8.150.32
MAL_PORT = 9300
MAL_INST_HOST = 10.8.150.32
MAL_INST_PORT = 5236
MAL_DW_PORT = 8236
MAL_INST_DW_PORT = 7236
[MAL_INST2]
MAL_INST_NAME = DSC_DW
MAL_HOST = 10.9.150.33
MAL_PORT = 9300
MAL_INST_HOST = 10.9.150.33
MAL_INST_PORT = 5236
MAL_DW_PORT = 8236
MAL_INST_DW_PORT = 7236
节点2:
把节点1的拷贝至节点2相应目录即可。
2.3修改dmarch.ini
节点1:
vi /home/dmdba/conf/dsc0_config/dmarch.ini
ARCH_LOCAL_SHARE = 1
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = +DMDATA/dmarch/arch_dsc0
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 102400
[ARCH_REMOTE1]
ARCH_TYPE = REMOTE
ARCH_DEST = DSC1
ARCH_INCOMING_PATH = +DMDATA/dmarch/arch_dsc1
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 102400
ARCH_WAIT_APPLY = 0
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME
ARCH_DEST = DSC_DW
节点2:
vi /home/dmdba/conf/dsc1_config/dmarch.ini
ARCH_LOCAL_SHARE = 1
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = +DMDATA/dmarch/arch_dsc1
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 102400
[ARCH_REMOTE1]
ARCH_TYPE = REMOTE
ARCH_DEST = DSC0
ARCH_INCOMING_PATH = +DMDATA/dmarch/arch_dsc0
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 102400
ARCH_WAIT_APPLY = 0
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME
ARCH_DEST = DSC_DW
注意:ARCH_LOCAL_SHARE=1表示共享归档,同时归档需要存放在共享存储上
2.4新建dmwatcher.ini
节点1:
vi /home/dmdba/conf/dsc0_config/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = MANUAL
DW_ERROR_TIME = 60
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 35
INST_INI = /home/dmdba/conf/dsc0_config/dm.ini
DCR_INI = /home/dmdba/conf/dmdcr.ini
INST_OGUID = 63635
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver
INST_AUTO_RESTART = 0
节点2:
vi /home/dmdba/conf/dsc1_config/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = MANUAL
DW_ERROR_TIME = 60
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 35
INST_INI = /home/dmdba/conf/dsc1_config/dm.ini
DCR_INI = /home/dmdba/conf/dmdcr.ini
INST_OGUID = 63635
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver
INST_AUTO_RESTART = 0
2.5修改dmdcr.ini
修改启动数据库到mount状态,并打开css服务自动拉起asm和dmserver进程参数。
节点1:
vi /home/dmdba/conf/dmdcr.ini
DMDCR_PATH = /dev/raw/raw2
#dmasmsvr使用的MAL配置文件路径
DMDCR_MAL_PATH = /home/dmdba/conf/dmasvrmal.ini
DMDCR_SEQNO = 0
DMDCR_AUTO_OPEN_CHECK = 90
#ASM重启参数,命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 30
DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/conf/dmdcr.ini
#DB重启参数,命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 30
DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/conf/dsc0_config/dm.ini dcr_ini=/home/dmdba/conf/dmdcr.ini mount
节点2:
vi /home/dmdba/conf/dmdcr.ini
DMDCR_PATH = /dev/raw/raw2
#dmasmsvr使用的MAL配置文件路径
DMDCR_MAL_PATH = /home/dmdba/conf/dmasvrmal.ini
DMDCR_SEQNO = 1
DMDCR_AUTO_OPEN_CHECK = 90
#ASM 重启参数,命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 30
DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/conf/dmdcr.ini
#DB 重启参数,命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 30
DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/conf/dsc1_config/dm.ini dcr_ini=/home/dmdba/conf/dmdcr.ini mount
2.6修改数据库服务脚本
因为数据库要启动到mount状态,部署dsc时候注册的数据库服务是直接启动到open状态的。
DSC的2个节点都修改:
cd /home/dmdba/dmdbms/bin
vi DmServiceDSC
将START_MODE=open改为START_MODE=mount
2.7注册守护进程服务
使用root注册守护进程服务
节点1:
su - root
cd /home/dmdba/dmdbms/script/root
./dm_service_installer.sh -t dmwatcher -watcher_ini /home/dmdba/conf/dsc0_config/dmwatcher.ini -p DSC
节点2:
su - root
cd /home/dmdba/dmdbms/script/root
./dm_service_installer.sh -t dmwatcher -watcher_ini /home/dmdba/conf/dsc1_config/dmwatcher.ini -p DSC
2.8启动DSC集群(mount状态)
DSC集群2个节点分别执行:
cd /home/dmdba/dmdbms/bin
./DmCSSServiceDSC start
选择集群中任一节点,打开监视器查看数据库状态是否为mount:
./dmcssm ini_path=/home/dmdba/conf/dmcssm.ini
2.9设置DSC集群为主库
选择DSC集群任一节点设置OGUID并修改为主库
cd /home/dmdba/dmdbms/bin
./disql SYSDBA/SYSDBA
SP_SET_OGUID(63635);
ALTER DATABASE PRIMARY;
三、DW实时备库部署
3.1安装数据库软件并进行初始化实例
数据库安装参考单机部署:
https://blog.csdn.net/Cj12315/article/details/124420686
3.2利用备份还原数据库
./dmrman use_ap=2 CTLSTMT="RESTORE DATABASE '/dmdata/dsc/dm.ini' FROM BACKUPSET '/dmdata/dmbak/db_full_1028'"
./dmrman use_ap=2 CTLSTMT="RECOVER DATABASE '/dmdata/dsc/dm.ini' FROM BACKUPSET '/dmdata/dmbak/db_full_1028'"
./dmrman use_ap=2 CTLSTMT="RECOVER DATABASE '/dmdata/dsc/dm.ini' UPDATE DB_MAGIC"
四、DW实时备库配置
4.1修改dm.ini
vi /dmdata/dsc/dm.ini
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1
4.2新建dmmal.ini
vi /dmdata/dsc/dmmal.ini
文件内容和DSC集群节点保持一致。
4.3新建dmarch.ini
vi /dmdata/dsc/dmarch.ini
ARCH_WAIT_APPLY = 0
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dmdata/dmarch
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT= 307200
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME
ARCH_DEST = DSC0/DSC1
4.4新建dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = MANUAL
DW_ERROR_TIME = 60
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 35
INST_INI = /dmdata/dsc/dm.ini
INST_OGUID = 63635
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver
INST_AUTO_RESTART = 1
4.5注册守护进程和数据库进程服务
使用root进行注册守护进程和数据库进程服务
su - root
cd /home/dmdba/dmdbms/script/root
./dm_service_installer.sh -t dmserver -dm_ini /dmdata/dsc/dm.ini -m mount -p DSC_DW
./dm_service_installer.sh -t dmwatcher -watcher_ini /dmdata/dsc/dmwatcher.ini -p DSC_DW
4.6启动数据库服务(mount状态)
cd /home/dmdba/dmdbms/bin
./DmServiceDSC_DW start
4.7设置DW为备库
设置oguid和设置为备库:
cd /home/dmdba/dmdbms/bin
SP_SET_OGUID(63635);
ALTER DATABASE standby;
五、配置DSC+DW集群监视器
在监视器服务器上新建dmmonitor.ini
vi /home/dmdba/conf/dmmonitor.ini
MON_DW_CONFIRM = 0
MON_LOG_PATH = /home/dmdba/dmdbms/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 500
MON_LOG_SPACE_LIMIT = 2048
[GRP1]
MON_INST_OGUID = 63635
MON_DW_IP = 10.8.150.31:8236/10.8.150.32:8236
MON_DW_IP = 10.9.150.33:8236
六、启动守护进程
分别启动DSC集群和备库的守护进程:
DSC集群:
cd /home/dmdba/dmdbms/bin
./DmWatcherServiceDSC start
DW备库:
cd /home/dmdba/dmdbms/bin
./DmWatcherServiceDSC_DW start
七、监视器查看DSC+DW集群状态
打开DSC+DW集群监视器,查看集群状态:
cd /home/dmdba/dmdbms/bin
./dmmonitor /home/dmdba/conf/dmmonitor.ini
输入show命令查看,确保数据库实例是ok,且都处于open状态,守护进程状态ok,归档状态都是valid。
更多关注达梦数据库官网
https://eco.dameng.com