2021-01-23

DM8实时主备系统故障切换测试

(1)自动切换方式(DW_MODE = AUTO;INST_AUTO_RESTART = 1)
初始状态:DM1主机,DM2备机
测试1:主机创建表,插入数据,备库成功建表并同步数据。
主库:
在这里插入图片描述

备库:
在这里插入图片描述

测试2:强杀主机服务。自动切换后重启服务

在这里插入图片描述
监视器状态:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

测试3:强杀备机,守护进程自动重启备机服务
在这里插入图片描述
监视器状态:
在这里插入图片描述

(2)手动切换方式(DW_MODE = MANUAL;INST_AUTO_RESTART = 1)
测试1:
主备库为静态数据库,无实时数据生成。主库网络中断,为保证业务开展,需将备库切换为新主库,待原主库恢复后,加入集群,恢复集群正常使用。
在这里插入图片描述

原主库:GRP1_RT_01
备库 :GRP1_RT_02
确认监视器开启服务,主库网络故障中断,备库接管成功后,主库网络恢复,确认监视器发现主库发生故障
在这里插入图片描述

因为主备为手动切换模式,同时监视器处于主库故障前已开启,启动备库接管
在这里插入图片描述

备库接管成功,网络恢复后,原主库GRP1_RT_01自动加入集群。
在这里插入图片描述

因主备库的SN值和N_NEW出现不一致,导致出现短暂双主情况
在这里插入图片描述
在这里插入图片描述

主库的守护进程可自动进入 Recovery 状态,进行数据恢复,集群恢复正常使用,切换主库。
在这里插入图片描述

测试2.确认监视器开启,主库网络故障中断,备库接管成功同时原主库瞬间恢复
在这里插入图片描述
确认监视器发现主库故障,为保证业务开展,马上切换成备库,切换成功后同时原主库网络恢复,加入集群,出现短暂双主情况
在这里插入图片描述
在这里插入图片描述

主库的守护进程自动进入 Recovery 状态,集群同步成功
在这里插入图片描述
切换主备库,恢复主备集群。
在这里插入图片描述

测试3.确认监视器没开启服务,主库网络故障中断,备库强制接管成功后,主库网络恢复,开启监视器,发现集群中只有备库存在
在这里插入图片描述

为保证生产环境的可用性,尝试采用备库接管主库后发现无法接管
在这里插入图片描述

采用备库强制接管,接管主库成功
在这里插入图片描述
在这里插入图片描述

等待主库网络恢复后,原主库自动加入集群,出现短暂双主情况,主库的守护进程自动进入 Recovery 状态,集群同步成功
在这里插入图片描述
在这里插入图片描述

切换主备库,恢复主备集群
在这里插入图片描述

测试4.确认监视器没开启服务,主库网络故障中断,备库强制接管成功瞬间主库网络恢复,开启监视器后,发现只有备库存在
在这里插入图片描述

采用强制接管模式,将备库接管为主库,接管成功
在这里插入图片描述

当备库强制接管成功后,主库瞬间加入集群,出现短暂双主情况,主库的守护进程自动进入 Recovery 状态,集群同步成功
在这里插入图片描述
在这里插入图片描述

切换主备库,恢复主备集群
在这里插入图片描述

测试5.确认监视器后台启动,主库网络故障中断,备库接管成功后,主库网络恢复
在这里插入图片描述
在这里插入图片描述

在主库故障前,确认监视器已后台启动。主库网络中断,开启监控监视器发现只有备库存在
在这里插入图片描述

尝试采用备库接管主库,发现无法正常接管
在这里插入图片描述

采用强制接管模式,将备库接管为主库,接管成功
在这里插入图片描述

等待主库网络恢复后,主库自动加入集群,导致短暂双主情况,主库的守护进程自动进入 Recovery 状态,集群同步成功

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

切换主备库,恢复主备集群
在这里插入图片描述

测试6.确认监视器后台启动,主库在做建表操作时,主库网络中断,备库接管
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

当主库在建表操作成功后,将网络中断,发现备库同时也建表成功,因此改变策略,同时在备库进行数据插入操作,因为备库为stanby模式,无法进行DDL操作,因此需要将备库接管
在这里插入图片描述

开启监控监视器后,发现只有备库存在,采用强制接管
在这里插入图片描述

待主库网络恢复后,自动加入集群,出现双主情况
在这里插入图片描述

重启了DmWatcherService服务,主库的守护进程自动进入 Recovery 状态失败,GRP1_RT_01的ISTATUS状态为MOUNT,集群同步失败,依然存在双主情况;
在这里插入图片描述
在这里插入图片描述

尝试重启DmService,集群同步失败依然存在双主情况。
在这里插入图片描述
在这里插入图片描述

解决方法:停掉原主库GRP1_RT_01的数据库和数据库监控服务,对现主库GRP1_RT_02做联机备份,拷贝data目录下文件到GRP1_RT_01:
./disql SYSDBA/SYSDBA@192.168.175.131:32142
BACKUP DATABASE BACKUPSET ‘/home/dmdba/dmdbms/data/DAMENG/bak/db_full_bak’;

scp -r ./* dmdba@192.168.175.130:/home/dmdba/dmdbms/data/
对原主库GRP1_RT_01采取脱机备份:
RESTORE DATABASE ‘/home/dmdba/dmdbms/data/DAMENG/dm.ini’ FROM BACKUPSET ‘/home/dmdba/dmdbms/data/DAMENG/bak/db_full_bak’;
在这里插入图片描述

RECOVER DATABASE ‘/home/dmdba/dmdbms/data/DAMENG/dm.ini’ WITH ARCHIVEDIR ‘/home/dmdba/dmdbms/data/DAMENG/arch’;
在这里插入图片描述

RECOVER DATABASE ‘/home/dmdba/dmdbms/data/DAMENG/dm.ini’ UPDATE DB_MAGIC;
在这里插入图片描述

修改GRP1_RT_01 /home/dmdba/dmdbms/data/DAMENG/dm.ini中的ALTER_MODE_STATUS参数为1,允许用户进行直接通过 SQL 修改 数据库模式、状态以及 OGUID。
在这里插入图片描述

以mount的方式打开GRP1_RT_01数据库服务,手动修改INST_OGUID值,并把GRP1_RT_01改为备库:
./dmserver /home/dmdba/dmdbms/data/DAMENG/dm.ini mount
在这里插入图片描述

关闭数据库服务,再次修改dm.ini中的ALTER_MODE_STATUS参数为0
,开启GRP1_RT_01数据库服务,GRP1_RT_01、GRP1_RT_02数据库守护服务,打开监控器:
在这里插入图片描述

集群恢复正常,GRP1_RT_01查询建立的表,可以查询出数据:
在这里插入图片描述

切换主备库,恢复主备集群:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值