IBM Support

在DB2 HADR环境中,主备端出现较大日志间隔时该如何处理来尽量避免数据丢失?

Question & Answer


Question

在DB2 HADR环境中,主备端出现较大日志间隔时该如何正确处理来尽量避免数据丢失?

Answer

这里针对以下两个场景提供相应的解决方案:
1. 当主数据库端连接依然存在时, 有两种修复方式:
1)停止DB2 HADR,备份主端数据库,然后在备端恢复
2)Deactivate and Activate DB
Deactivate db on Standby
Activate db on Standby
Activate db on Primary
运行 db2pd -db <dbname> -hadr 检查主备端日志是否同步

2. 当主端突然宕机并再也无法被拉起,并且主数据库端日志没有损坏, 那么在主备端日志间隔较大的时候如何让备端最大限度前滚日志并恢复正常服务?
注意此时如果直接在备端执行take over by force 会导致大量的数据丢失,请谨慎使用,正确的操作方式应该是:
1)通过 Deactivate db on Standby, STOP HADR使备用数据库角色转变为标准数据库
2)此时的标准数据库将处于前滚暂挂状态,将主端没有reply的日志拷贝至备端,然后通过rollforward database to end of log and stop 来最大限度的前滚数据库
3)activate database on standby来激活启动数据库从而最大程度的避免日志丢失

[{"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"High Availability - HADR","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"9.8;9.7;10.1;10.5;11.1","Edition":"Advanced Enterprise Server;Advanced Workgroup Server;Enterprise Server;Express;Express-C;Personal;Workgroup Server","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
16 June 2018

UID

swg22003379