注册
两节点主备守护集群(data watcher)搭建部署操作指南
技术分享/ 文章详情 /

两节点主备守护集群(data watcher)搭建部署操作指南

hahaha 2026/08/07 146 0 0

一、操作前准备:

  1. 操作前规划
    IP规划:三台kylinV10虚拟机,安装DM8
    主库ip 192.168.17.10
    备库ip 192.168.17.11
    监视器ip 192.168.17.12
    端口规划(为了方便这里设置主备端口相同):实例端口,mal协议端口,守护进程通信端口, 实例守护端口。
    Mum_port:5234 (防火墙要放开)
    Mal_port:5235 (防火墙要放开)
    Mal_dw_port:5236 (防火墙要放开)
    Mal_inst_dw_port:5237
  2. 保持主库和备库数据一致
    (1)先把主库停掉,然后使用dmrman对主库脱机备份
    image.png
    (2)备库通过dmrman进行还原:三部曲是还原,恢复,更新DB_MAGIC
    RESTORE DATABASE TO ‘/home/dmdba/dmdata/DMOA’ FROM BACKUPSET ‘/home/dmdba/dmdata/bak/DMOA_FULL’;
    RECOVER DATABASE ‘/home/dmdba/dmdata/DMOA/dm.ini’ FROM BACKUPSET ‘/home/dmdba/dmdata/bak/DMOA_FULL’;
    RECOVER DATABASE ‘/home/dmdba/dmdata/DMOA/dm.ini’ UPDATE DB_MAGIC;
    image.png
    (3)验证主备库的永久魔数,两者一致符合要求。
    image.png
    image.png
    二、完成守护集群的搭建:
    1.修改dm.ini,主备库里面的instance_name不能一致。我这让主库为DMOA,备库为DMOA_STANDBY。
    2.创建dmmal.ini,写入配置文件,配置 MAL 系统。
    3.创建dmarch.ini,写入配置文件,配置数据归档类型。
    4.创建dmwatcher.ini,写入配置文件,配置守护进程。
    5.上述四个文件配置好之后,主库以mount方式启动,新开一个终端进入disql开启归档,设置守护组id,设置主库备库的模式,最后启动守护进程dmwatcher.ini。
    image.png
    image.png
    image.png

6.按照同样的(1-5操作步骤)设置备库。
7.在第三台服务器192.168.17.12上配置监视器(刚开始配置发现在监视器上无法显示主备库信息,后来经过排查发现主备库的守护进程端口5236被防火墙拦截导致无法通信),主要就是新建dmmonitor.ini文件,可以设置监视器模式和日志保存路径,最重要的不要忘了把主备库的相关信息写进去,最后启动监视器。
image.png

三、作业实操
作业要求1:完成主备集群的部署,并测试建表和插入数据备机是否能及时同步,并可查询到数据。
主备库的集群守护集群搭建完成之后,如果没有把dmwatcher注册为服务,需要新开终端进入disql交互命令行在主库操作建表插入即可,备库可以同时看到相关信息。
image.png
image.png

作业要求2:制造主机故障,测试备机可接管并持续提供服务。
手动把主库的守护进程和服务停掉之后,监视器自动用备库接管。
经过测试,备库可以正常插入数据。
image.png
image.png

作业要求3:恢复故障主机,将故障主机加入集群。
原主库17.10开启数据库实例服务,再开启守护进程之后,监视器自动将其加入到集群,但是位置变成了standby
image.png
原备库17.11插入的新数据“101”经过自动同步之后可以被原主库也就是现在的备库17.10查询到。
image.png
作业要求4:手动切换主备集群,恢复原主备集群的位置。
进入监视器交互界面之后使用switchover GRP1.DMOA命令进行切换,会要求登录数据库,输入数据库用户名和密码,然后确认登录再执行切换命令即可。
image.png
经过若干秒切换完成之后使用show查看发现原主库17.10又再次成为primary。
image.png

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服