极速定位Binlog断点
当使用自动定位的方式从TaurusDB实例拉取Binlog时,如果未读取的Binlog文件比较多,自动定位正确Binlog位点的时间很长。例如:未读取的Binlog文件的个数是6万个,自动定位正确Binlog位点的时间是60分钟左右;特性开启后,自动定位的时间从60分钟降低到2秒左右。
约束与限制
内核版本为2.0.60.241200及以上版本支持使用该功能。
参数说明
rds_locate_right_binlog_by_binary_search
- Scope: Global
- Dynamic: Yes
- Type: Boolean
- Default Value: true
- Description:当使用自动定位建立复制时, 指定发送线程是否通过二分查找法定位正确的二进制日志文件。
使用示例
创建一个TaurusDB实例(例如:IP: 192.168.187.120),在TaurusDB实例执行事务生成6万左右个Binlog文件。
创建一个容灾实例,从上述TaurusDB实例拉取未读取的Binlog文件,在容灾实例上执行命令如下:
CHANGE MASTER TO MASTER_HOST='192.168.187.120', MASTER_PORT=3306, MASTER_AUTO_POSITION = 1;
START SLAVE user='rdsRepl' password='......';
SHOW SLAVE STATUS
观察自动定位正确binlog位点的时间(从开始执行START SLAVE的时刻到Retrieved_Gtid_Set开始增加的时刻)。

Retrieved_Gtid_Set是SHOW SLAVE STATUS输出结果的一项。