在使用 HDR 复制的接近同步方式时,主服务器在收到有关 HDR 辅助服务器已接收所传输事务的确认后,将逻辑日志缓冲区清空至磁盘。主服务器不会等待有关在 HDR 辅助服务器上已落实事务的确认。
在日志传输缓冲区包含许多日志记录时,在 HDR 辅助服务器上应用这些日志记录将需要更多时间。HDR 复制的接近同步方式提供比完全同步方式更优异的性能,比异步方式更优异的数据完整性。
主服务器在其保留的页面中存储以下接近同步信息:
- 已排队至 drprsend 线程的未处理数据复制缓冲区的数量。
- 日志唯一值,最近分页的日志的页码。
- 线程控制块 (TCB) 的指针、带括号的线程标识以及该线程已执行的落实的日志序号 (LSN)。
- 等待 HDR 辅助服务器上“已接收”确认的落实的 LSN。
要查看此信息,请运行
onstat -g dri que 命令。
复制对中的数据库服务器间的检查点是同步的。主服务器会等待 HDR 辅助服务器确认收到了检查点日志记录后,再完成其检查点。如果检查点未在 DRTIMEOUT 配置参数指定的时间内完成,那么主数据库服务器假定发生了故障。
HDR 接近同步方式具有以下需求:
- 主服务器和 HDR 辅助服务器上的 DRINTERVAL 配置参数必须设置为 -1,或者主服务器上的 DRINTERVAL 配置参数必须设置为 0。
- 主服务器和 HDR 辅助服务器上的 DRTIMEOUT 配置参数必须设置为相同值。
- 主服务器和 HDR 辅助服务器上的操作系统时间必须是同步的。
要开启接近同步数据复制,请将 DRINTERVAL 配置参数设置为
0,然后使用以下某种方法:
- 将 HDR_TXN_SCOPE 配置参数设置为 NEAR_SYNC。
- 运行 SET ENVIRONMENT HDR_TXN_SCOPE 'NEAR_SYNC';