我认为的关键点是在设计的时候要对HADR想解决的问题想清楚,制定好进行HADR切换的条件。
HADR可以解决2个问题,一是高可用的问题,二是灾备的问题。
因为HADR有自己独立的主机和存储,所以无论源库是发生主机故障还是存储故障,HADR都可以解决。
目前HADR在远距离传输上没有做过特殊的优化,所以在异地HADR环境中可能会遇到一些问题。
收起主要的关键点还是在于两个DB2 HADR节点配置的一致性和规范性,无论是操作系统的用户、密码、组、文件系统权限等还是数据库实例的配置参数和DB2SET参数都要求一致,至于数据库都是在搭建HADR过程中,通过主库备份恢复至备库的,问题不大,其他规范和单DB2节点还是类似的;另外对于两个节点的通讯的质量和DB2 HADR超时时间参数的设置、同步方式的选择也是关键点。如何根据自己的真实需求,转换为切合实际的配置是关键点。
难点的话,主要还是如何解决DB2 HADR中不记事物日志的同步复制,比如一些大的LOB或者XML字段,或者不记日志的操作,比如LOAD等,这些不记日志的操作,不会同步至HADR备端,如何协调应用开发部门解决该问题,制定专门的应用规范也是个难点。