现象:
集群失败,数据库无法提供服务
主库除四个故障实例以外,其它都能正常提供服务
四个故障库被打上“可疑”标签,实例无法使用;主库中四个故障库-提示未同步,无数据丢失
辅助库可以正常从主库同步11个库,22个库无法同步
可能的原因分析:
库出现可疑的几种情况:
- 日志超出配置大小 —排除
- 日志无限制,但是磁盘空间不够了----排除
- 意外掉电,造成磁盘文件损坏 —磁盘目前正常
- 操作系统拒绝对数据库资源的访问 —排除
- 一个或多个数据库文件不可用性或已损坏
实例被加上可疑标签导致实例无法使用
实例无法使用,所以同步也失效
未同步导致故障集群转移失效
最终原因:
由于备份数据库时磁盘IO异常导致集群失败
解决办法:
操作步骤
-
对两数据库实例节点做快照
-
利用集群故障转移功能,将主节点转移到到DB01
-
在DB01节点上检查四个库是否正常查询
-
DB01-AG上四个库进行脱机(Alwayson,可用性数据库-从可用性组删除数据库),如下图所示
WSS_Content_dshbgs
WSS_UsageApplication
WSS_Content_kjcw
WSS_Content_llszcw
从集群中脱离库,不构成数据删除情况
Alwayson从主可用性数据库中脱离后,Alwayson辅助库可用性数据库也会同步自动消失
-
DB02-AG上删除四个有问题的库(需要删除数据库+文件,默认从数据库中操作后文件 会自动删除)
-
DB01-AG上加四个库,集群会自动将DB01上这四个库同步到DB02
7 利用集群故障转移功能,将主节点转移到到DB02(因为02其它库数据是最新的,所以必须切回DB02,然后再将所有数据同步给DB01)