近期系统性的进行了达梦DCP的学习,并且也参加了考试,在整个过程中受益良多。这里专门谈一下达梦数据库的高可用——数据守护集群,我在整个学习过程中的一些体会。
安装部署过程,我是按照这样去做的:
机器规划:
主机,安装DM8,实例名使用DMSERVER
备机,安装DM8,实例名使用DMSERVER2
监视器,单独一台服务器,安装DM8,实例名使用默认
1、关闭主库,备份数据库,将备份拷贝到备库的机器上
主库:
Stopping DmServiceDMSERVER:
[ OK ]
备份之前,保证目标的目录是存在且全新,并让dmdba用户有权限写入
dmrman V8
RMAN> backup database '/dm8/data/DAMENG/dm.ini' backupset '/dm8/backup/20250408';
[dmdba@localhost backup]$ scp 20250408.* dmdba@192.168.10.102:/dm8/backup
2、配置主库的 dm.ini,dmmal.ini,dmwatcher.ini,dmarch.ini 文件,文件要放在/dm8/data/DAMENG/里面
配置 MAL:
MAL_CHECK_INTERVAL= 5
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME =DMSERVER
MAL_HOST = 192.168.10.101
MAL_PORT = 15236
MAL_INST_HOST = 192.168.10.101
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DMSERVER2
MAL_HOST = 192.168.10.102
MAL_PORT = 15236
MAL_INST_HOST = 192.168.10.102
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101
MAL_INST_DW_PORT =45101
配置归档:
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DMSERVER2
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/arch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0
配置数据守护:
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 10
INST_OGUID = 8888
INST_INI = /dm8/data/DAMENG/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm8/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0
修改 dm.ini
MAL_INI = 1
ARCH_INI = 1
ALTER_MODE_STATUS= 0
ENABLE_OFFLINE_TS= 2
3、将主机的数据库启动到配置状态,至此,主机的配置告一段落。
将数据库启动到 mount 状态:
4、初始化备库的实例,还原恢复数据库(如果已经提前创建了实例和数据库,不需要这步)
还原恢复数据库,注意要数据库服务关闭后操作:
RMAN> restore database '/dm8/data/DAMENG/dm.ini' from backupset
'/dm8/backup';
RMAN> recover database '/dm8/data/DAMENG/dm.ini' from backupset
'/dm8/backup';
RMAN> recover database '/dm8/data/DAMENG/dm.ini' update
db_magic;
5、配置备库的 dm.ini,dmmal.ini,dmwatcher.ini,dmarch.ini 文件,文件也要放在/dm8/data/DAMENG/里面
配置 MAL:
MAL_CHECK_INTERVAL= 5
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME =DMSERVER
MAL_HOST = 192.168.10.101
MAL_PORT = 15236
MAL_INST_HOST = 192.168.10.101
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DMSERVER2
MAL_HOST = 192.168.10.102
MAL_PORT = 15236
MAL_INST_HOST = 192.168.10.102
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101
MAL_INST_DW_PORT =45101
配置归档:
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DMSERVER
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/arch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0
配置数据守护:
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 10
INST_OGUID = 8888
INST_INI = /dm8/data/DAMENG/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm8/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0
修改实例的文件dm.ini中的以下几个值:
ARCH_INI = 1
ALTER_MODE_STATUS= 0
ENABLE_OFFLINE_TS= 2
6、将备库启动到 mount 状态:
7、修改主库的 oguid 和修改数据库模式为主库:
SQL> alter database primary;
8、修改备库的 oguid 和修改数据库模式为主库:
SQL> alter database standby;
操作已执行
已用时间: 26.024(毫秒). 执行号:0.
9、分别启动主库和备库上的守护进程:
[dmdba@localhost bin]$ ./dmwatcher /dm8/data/DAMENG/dmwatcher.ini
10、配置监视器:
MON_DW_CONFIRM = 0
MON_LOG_PATH = /dm8/data/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 32
MON_LOG_SPACE_LIMIT = 0
[GRP1]
MON_INST_OGUID= 8888
MON_DW_IP = 192.168.10.101:65101
MON_DW_IP = 192.168.10.102:65101
登录到监视器:
login
用户名:sysdba
密码:
查看信息:
Show
主备切换:
Switchover
11、注册数据库实例和数据守护进程的服务
注册备机的数据库服务:
[root@localhost root]# ./dm_service_installer.sh -t dmserver -p DMSERVER2 -dm_ini /dm8/data/DAMENG/dm.ini
注册主机和备机的数据守护进程服务
[root@localhost root]# ./dm_service_installer.sh -t dmwatcher -p DMSERVER2 -watcher_ini /dm8/data/DAMENG/dmwatcher.ini
给监视器注册服务
12、如果使用手动方式关闭数据守护系统,请严格按照以下顺序执
行:
DMWATCHER[4.0] V8
DMWATCHER[4.0] IS READY
exit
DMWATCHER[4.0] V8
DMWATCHER[4.0] IS READY
exit
以上为整个搭建守护集群的过程。其中真正进行实操之后,会发现有很多的细节需要注意,都已经在其中进行了标注,希望可以帮助到看文章的各位同学。
文章
阅读量
获赞