lightlanguage 2020-04-22
主从参数:
修改date:ntpdate asia.pool.ntp.org
主从配置通讯端口:
db2h_erpinst1 70000/tcp
主库配置:
db2 update db cfg for erpdb using hadr_local_host PrimaryNode-1
#本地服务器主机
db2 update db cfg for erpdb using hadr_local_svc db2h_erpinst1
#本地服务名称
db2 update db cfg for erpdb using hadr_remote_host PrimaryNode-2
#远程服务器主机
db2 update db cfg for erpdb using hadr_remote_svc db2h_erpinst1
#远程服务器名称
db2 update db cfg for erpdb using hadr_remote_inst db2inst1
#远程服务器的 HADR 实例名
db2 update db cfg for erpdb using logindexbuild on
#索引设置 ?(将?logindexbuild?数据库配置参数设置为 ON,以确保为索引的创建、重新创建和重组记录完整的信息。虽然,这意味着在主系统上的索引构建可能需要更长时间和更多日志空间,但是但是在 HADR 日志重放期间,将在备用系统上重建索引,而且当发生故障转移时索引仍可用)
db2 update db cfg for erpdb using indexrec restart
#索引重建(那么重新启动数据库所耗的时间将因重新创建索引而较长,但是一旦数据库恢复联机,正常处理将不受影响)
db2 update db cfg for erpdb using hadr_syncmode SUPERASYNC ?#超级异步
#处于对等状态的日志写操作的 HADR 同步方式,确定当系统处于对等状态时主日志写操作如何与备用日志写操作同步
1、SYNC? 同步模式
此方式对防止发生事务丢失提供了最强有力的保护,但是事务响应时间较长。在此方式中,仅当日志已写入主数据库上的日志文件,而且主数据库已接收到来自备用数据库的应答,确定日志也已写入备用数据库上的日志文件时,方才认为日志写入是成功的。保证日志数据同时存储在这两处。(备库写入日志才成功,数据主从库同时存在,最安全 事务时间长)
2、NEARSYNC ?近同步模式
此方式对防止发生事务丢失提供的保护稍微差一点,但是,与 SYNC 方式比较起来,NEARSYNC 方式的事务响应时间较短。在此方式中,仅当日志记录已写入主数据库上的日志文件,而且主数据库已接收到来自备用系统的应答,确定日志也已写入备用系统上的主存储器时,方才认为日志写入是成功的。仅当两处同时发生故障,并且目标位置未将接收到的所有日志数据转移至非易失性存储器时,才会出现数据的丢失。(备库写入日志才成功,数据主从库同时故障,数据会丢失, 事务时间短)
3、ASYNC ?异步模式
与 SYNC 和 NEARSYNC 方式相比,ASYNC 方式的事务响应时间更短,但如果主数据库发生故障,那么事务失败的可能性更大。在此方式中,仅当日志记录已写入主数据库上的日志文件,而且已将此记录传递给主系统主机的 TCP 层时,方才认为日志写入是成功的。因为主系统不会等待来自备用系统的应答,所以当事务仍处于正在传入备用系统的过程中时,可能会认为事务已落实(日志写入到主,且传递给tcp层,成功,不等待备库的应答,容易丢事务)
4、SUPERASYNC ?超级异步模式
此方式具有最短的事务响应时间,但如果主系统发生故障,那么事务失败的可能性也最大。当您不希望事务由于网络中断或拥塞而受到阻塞或经历较长的响应时间时,此方式很有用。在此方式中,HADR 对永远不会处于对等状态或断开对等状态。仅当日志记录已写入主数据库上的日志文件时,才会认为日志写入是成功的。因为主系统不会等待来自备用系统的应答,所以当事务仍处于正在传入备用系统的过程中时,可能会认为事务已落实(事务时间最短,日志写入主库则成功,不等待备库应答)
从库配置:
db2 update db cfg for erpdb using hadr_local_host PrimaryNode-2
db2 update db cfg for erpdb using hadr_local_svc db2h_erpinst1
db2 update db cfg for erpdb using hadr_remote_host PrimaryNode-1
db2 update db cfg for erpdb using hadr_remote_svc db2h_erpinst1
db2 update db cfg for erpdb using hadr_remote_inst db2inst1
db2 update db cfg for erpdb using logindexbuild on
db2 update db cfg for erpdb using indexrec restart
db2 update db cfg for erpdb using hadr_syncmode SUPERASYNC
注册变量配置:
主库:
db2set db2_HADR_ROS=ON
db2set db2_STANDBY_ISO=UR
(reads on standby 功能 (HADR RoS) 支持只读应用程序访问备用数据库。设置了以后备库必须重启才生效,这只有在启用了 reads on standby 功能时才可行。使用此功能,读/写应用程序可访问 HADR 主要数据库,只读应用程序可访问主要或备用数据库。这支持您将在主要数据库上运行的一些只读工作负载卸载到备用数据库上。连接备用数据库的应用程序在故障转移时不会影响备用数据库的可用性)
从库:
db2set db2_HADR_ROS=ON
db2set db2_STANDBY_ISO=UR
启动主从数据库(第一次启动):
从库:
db2start
db2 start HADR on db erpdb as standby
主库:
db2start
db2 start HADR on db erpdb as primary
(同步主从时间) ?yum install ntp -y ? ntpdate cn.pool.ntp.org