GBase 8a 表同步一直完不成,同步强制锁表的参数解决同步一直追不上加载

GBase 8a 数据库在做同步时,会先比较主备分片的差异,然后将不同的数据做同步。 本次同步操作完成后,会再次检查是否已经一致。如果一致则清理掉异常标记,如果还有差异,则会再次同步。这个机制如果遇到了频繁变动的表,比如一直在加载,且频率很高,至少入库时间短于一次同步的时间,就会造成同步一直无法完成的情况。

针对这种情况,可以通过调整gcrecover同步锁表参数,在同步前,先锁定表,不允许其它DML操作。

配置文件

gcluster/config/gc_recover.cnf

增加参数

recover_lock_table_exclusive=1
表在同步时,会先锁住表,不让后续的DML操作。 确保本次同步后数据一致。

警告

警告:如果你的同步需要耗时非常长,那么这个期间,这个表将无法加载新数据,【很有可能】与你预期的不符。

GBase 8a 表同步一直完不成,同步强制锁表的参数解决同步一直追不上加载》有1条评论

评论已关闭。