分类: DB2/Informix
2008-05-31 17:50:20
HDR:故障转移
本节讨论以下故障转移主题:
老话说,“既然我们生活在现实世界中,遇到麻烦是难免的”,所以 HDR 故障转移是很有必要的。因为 IDS 和 HDR 依赖的系统各有不同,所以需要处理的问题也有许多差异。下面是需要进行故障转移的一些常见原因:
如果主服务器发生故障,从服务器可以采用以下选项:
DRAUTO
设置为 1 或 2 的结果
注意:自动切换只改变服务器类型。它不把客户机应用程序重定向到从服务器。
如果从服务器发生故障,那么主服务器保持在线状态。如果将从服务器用作报告服务器,而且相信从服务器的故障需要花一些时间才能解决,那么需要将一些客户机重定向到主服务器。注意,主服务器可能需要额外的资源,比如额外的临时 dbspace、CPU VP 或内存。不需要将主服务器的类型改为标准,除非是需要重新启动 HDR。
如果发生媒体故障,HDR 环境中可能会出现几个问题。这些问题取决于哪个服务器需要恢复。如果主服务器发生故障,要记住以下要点:
如果从服务器发生故障:
如果两个 HDR 服务器上的关键媒体数据都没有损坏,那么可能出现以下四种情况,它们分别需要不同的 HDR 重新启动过程:
在发生网络故障之后,HDR 对将超时,然后 HDR 关闭。主服务器将保持在线模式,从服务器仍然处于只读模式。在修复网络故障之后,可以在从服务器上运行 onmode -d secondary primary_name
,重新启动 HDR。
注意:重新启动 HDR 不是必需的。主服务器会每隔 10 秒尝试重新连接从服务器。它还会每隔 2 分钟在 online.log 中记录一个关于连接无法建立的消息。如果连接很快恢复,就不必使用 onmode
重新启动连接。
在发生从服务器故障之后,只需使用 oninit
重新启动 HDR。如果在消息日志中看到以下消息:
DR: Start Failure recovery from tape |
就需要用 ontape -l
命令将来自主服务器的逻辑日志应用于从服务器。
在发生主服务器故障之后,只需使用 oninit
重新启动 HDR。
如果发生主服务器故障,而且从服务器已经切换为标准服务器,就需要按照表 2 中的步骤重新启动 HDR:
步骤 | 在主服务器上 | 在从服务器上 |
---|---|---|
1 | onmode -s —— 这个步骤将目前的标准服务器切换为静默模式。已经连接的所有客户机必须断开连接。执行更新的应用程序必须重定向到主服务器。 | |
2 | onmode -d secondary prim_name | |
3 | oninit —— 如果过去写到从服务器上的所有逻辑日志记录仍然可用,那么在执行 oninit 命令时,主服务器会恢复从服务器磁盘上的这些记录。如果在从服务器上备份并删除了逻辑日志文件,那么这些文件中的记录就不再保留在从服务器磁盘上了。在这种情况下,会提示从磁带恢复这些逻辑日志文件(第四步)。 | |
4 | 如果提示从磁带恢复逻辑日志记录,那么执行这个步骤:ontape -l 或 onbar -r -l |
在这个练习中,试验一下从主服务器向从服务器进行故障转移,然后再恢复 HDR 环境的状态。
练习 1:设置一个 HDR 环境。模拟一次主节点故障。将从节点转换为标准节点。
练习 2:重新设置 HDR 环境,使其恢复到主服务器故障之前的状态。
练习 1:这个练习演示如何故障转移到从服务器。应该执行的步骤如下:
onmode -ky
onmode -d standard
练习 2:有几种方法可以在此类故障之后设置 HDR,但是应该采用 表 2 中列出的步骤。这样就能够将 HDR 对恢复到以前的状态,而不需要执行备份和恢复。如果从服务器上的逻辑日志已经存档,而且主服务器也没有保留这些逻辑日志,就需要执行恢复。