关于HADR主备机切换出现的问题

背景环境:    IBM P55A 服务器双机 HACMP集群,假设为A和B  A和B上分别运行DB2 V9.1 通过HADR保障数据同步,A机为主服务器,运行数据库资源组,B机为在线热备服务器,当A机故障进行资源组切换时,通过切换脚本完成HADR角色转变(takeover)。主数据库每周六有一个在...显示全部
背景环境:    IBM P55A 服务器双机 HACMP集群,假设为A和B  A和B上分别运行DB2 V9.1 通过HADR保障数据同步,A机为主服务器,运行数据库资源组,B机为在线热备服务器,当A机故障进行资源组切换时,通过切换脚本完成HADR角色转变(takeover)。
主数据库每周六有一个在线全备,其余每天增量备份。



问题描述:
    周二准备对A机进行停机维护,操作流程是:
    (1)将A机数据库资源组切换到B机,正常通过切换脚本资源组过去后,B机数据库角色变为primary,A机数据库角色变为standby
    (2)然后停止A机数据库HACMP、HADR、数据库实例,然后重启A机,启动完成后再启动数据库实例、HADR及HACMP
    (3)然后将B机服务器资源组切回到A机,此时A机数据库为primary,B机数据库为standby

    按理说到步骤(3)整个过程应该完成,但当天在到步骤(3)后出现问题:即A机的数据库资源组又自动切换到了B机,同时A机的数据库和B机的数据库状态都是primary,disconnect,因为资源组在B机所以此时B机对外服务,但接着发现B机有一个数据库表空间状态为Restore Pending,导致应用的部分功能无法使用,接着对A机数据库进行恢复,利用周六全备及周一增量备份,然后启动HADR为standby失败,怀疑为B机数据库故障导致HADR无法同步,于是为恢复B机故障表空间,将A机数据库对应表空间做离线备份,然后在B机上做故障表空间恢复并前滚(第一次知道表空间必须进行前滚恢复),但前滚恢复就是失败,提示的大概信息是invalid log之类的(具体记不清了),通过query status查看所需的日志在B机上有但就是前滚恢复不成功

存在疑问:
    (1)数据库资源组第二次切换回到A机后为何又自动切换回去了?
    (2)自动切换后为什么又出现两个primary状态,导致HADR无法同步?
    (3)为什么B机数据库会有一个表空间是Restore Pending?
    (4)哪些情况会导致一个表空间状态变为Restore Pending?


附件为A机和B机数据库诊断日志

附件:

附件图标A机错误日志.log (387.29 KB)

附件图标B机错误日志.log (1.03 MB)

收起
参与6

查看其它 4 个回答clay的回答

clayclay网站架构师123123
问一下哈,为什么做了HA后还要做HADR呢?HA两边使用的是同一块资源,和HADR不冲突吗?
IT培训教育 · 2015-06-05
浏览838

回答者

clay
网站架构师123123

clay 最近回答过的问题

回答状态

  • 发布时间:2015-06-05
  • 关注会员:1 人
  • 回答浏览:838
  • X社区推广