数据同步有延时

最近更新时间:2024-07-10 15:03:21

我的收藏

问题现象

源数据库和目标数据库的同步内容有延时。

可能原因

DTS 选择的传输链路规格较低。
目标库负载过大。
目标库规格较低。
源库有大事务或者慢 SQL 正在执行。
源端为只读,并且长时间没有数据写入。
网络问题,带宽限制或者网络抖动。

处理方法

DTS 选择的传输链路规格较低

请先 查看监控数据 中源库和目标库的 RPS,如果用户选择的传输链路规格较低,并且 RPS 已达到该规格的上限,请升级传输链路规格,不同规格的上限请参考 数据迁移规格说明;如果用户已经选择了最高的规格,RPS 仍然达到规格上限,则按照以下办法进行排查。

目标库负载过大

目标库负载大时,可以等业务量小的时候看情况是否正常,或者对目标库的规格进行升级。

目标库规格较低

对目标库的规格进行升级。

源库有大事务或者慢 SQL 在执行

检查源库是否有大事务或者慢 SQL,因为源库上的大事务或慢 SQL 本身执行时间较长,DTS 解析后再同步到目标端也需要一段时间,所以会导致进度卡住或者延迟。如有这种情况,需要等大事务或者慢 SQL 执行结束后延迟会慢慢降下来,或者避免迁移/同步过程中源库有慢 SQL 或大事务。

增量迁移或者同步场景中源库无数据写入

在源端为只读的场景中,如果源库长时间没有数据写入,或者有空的 Binlog,就会导致数据延时,请在源库进行数据写入即可恢复正常。源端非只读,不存在该问题。

网络问题

如果使用云联网接入,需要检查云联网配置的带宽。云联网仅提供所有地域间 10Kbps 以下的免费带宽,使用 DTS 数据传输时,这个带宽不够,需要 配置更高的带宽
如果是自建数据库,需要检查网络带宽是否有限制。