实时主备的故障测试

1,断开备库server

初始状态:CHEN1主库,CHEN2备库

目标状态:CHEN2 server被自动拉起,恢复初始状态

(1)杀掉备库server进程

(2)备库守护进程会自动尝试拉起server

(3)成功拉起后,恢复初始状态

2,断开备库watcher

初始状态:CHEN1主库,CHEN2备库

目标状态:CHEN2 watcher死了,备库CHEN2和主库CHEN1正常运行,数据同步正常

(1)杀掉备库watcher进程

(2)监视器连接备库守护进程超时

(3)备库数据守护状态error

(4)在主库插入数据,备库仍然能同步

(5)守护进程断开不能自动重启,需要手动打开

(6)监视器自动收到备库守护进程的连接

(7)备库恢复正常,依旧是CHEN1主库,CHEN2备库

3,手动switchover

初始状态:CHEN2主库,CHEN1备库

目标状态:CHEN1主库,CHEN2备库

(1)登录监视器,执行switchover命令

(2)切换成功,CHEN1为主库,CHEN2为备库

4,断开主库server

初始状态:CHEN1主库,CHEN2备库

目标状态:CHEN1 server被自动拉起,恢复初始状态

(1)杀掉主库server进程

(2)主库守护进程会自动尝试拉起server

(3)成功拉起后,恢复初始状态

5,断开主库watcher

 初始状态:CHEN1主库,CHEN2备库

目标状态:CHEN1 watcher死了,主库CHEN1和备库CHEN2正常运行,数据同步正常

(1)杀掉主库watcher进程

(2)监视器连接主库守护进程超时

(3)主库数据守护状态error

(4)在主库删除数据,备库仍然能同步

(5)守护进程断开不能自动重启,需要手动打开

(6)监视器自动收到备库守护进程的连接

(7)备库恢复正常,依旧是CHEN1主库,CHEN2备库

6,server和watcher都断开

什么时候会触发自动接管呢?只有server和watcher都失联,或者watcher尝试拉起失败了才能触发takeover。

如果配置了自动接管,满足条件时备库就会自动接管,不需要手动干预,自动接管出错了才需要手动干预。

初始状态:CHEN1主库,CHEN2备库

目标状态:CHEN2主库,CHEN1备库

(1)退出主库watcher进程

(2)监视器连接主库守护进程超时

(3)主库数据守护状态error

(4)不能手动执行takeover命令,因为CHEN1的server现在是正常的。

(5)把server进程也杀掉

(6)监视器检测到CHEN1故障,开始自动接管

(7)接管成功,CHEN1成为备库,CHEN2成为主库

(8)但此时CHEN1还是故障的,CHEN1的server和watcher还是死的

(9)手动开启CHEN1的watcher

(10)监视器会自动检测到状态变化,并尝试拉起server

(11)拉起成功,CHEN1作为备库恢复正常

7,拉起失败

初始状态:CHEN1主库,CHEN2备库

目标状态:CHEN2主库,CHEN1备库

模拟一个主库的watcher尝试拉起失败并触发自动接管的情况,让服务没办法正常启动,然后把server进程杀掉

(1)把主库CHEN2的dm.ini文件名字改成dm0.ini,杀掉server进程后,监视器发现实例出错

但是没有自动接管,可能因为归档相关的信息保存在dm.ini文件里面,现在没有这个文件就不知道下一步怎么办,只能死机

(2)换一个不那么大的改动,把dm.ini还原,把主库CHEN2的/home/dmdba/dmdbms目录下的include文件夹改名为include2

然后杀掉server进程,监视器会马上检测到主库CHEN2实例故障,并自动接管

查看接管后的数据守护组状态,CHEN1变成主库,CHEN2变为备库

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值