DM 同步会导致master(mysql)全局锁或者表锁吗?

【 TiDB 使用环境】生产环境
【 TiDB 版本】5.2.2
【复现路径】
【遇到的问题:问题现象及影响】
主库:MySQL 5.7
从库:tidb
主从同步:DM 增量同步
问题现象:一天凌晨用户无法写入数据,未通知技术处理,没了现场。
排查:
1、发现数据备份比平时慢很多倍数。
2、研发查代码,没有执行过全局或表相关锁。
3、怀疑是否和tidb有关,dm同步会不会造成全局锁或表锁
【资源配置】
【附件:截图/日志/监控】

DM 对接的账号是 root ? :+1:

不是root但是拥有所有权限账号:GRANT ALL PRIVILEGES ON .

你从账号就可以判断拉

好的,多谢,我查一下

当时源库是不是启的有mysqldump的备份任务?

是的,有备份任务,分析是大概是当时有事务执行,正好备份,互相影响了

DM只会在全量同步时候,会调用dumpling的代码来备份数据,在增量同步时候,是不会加锁的,可以相当于一个从库而已
备份时候对MySQL而言,是和mydumper类似,只在dump innodb表结构和MyISAM表时候,短暂加一下锁,其他时间是不会堵塞读的。(不过如果正好有一个慢查询或者长时间没有提交的事务时候,确实会堵塞所有表的读写很长时间)。
就你截图的例子,LOCK TABLES,应该是mysqldump引起的,mysqldump默认会对表加锁,建议改下备份参数。

PS:备份前一定要检查有没有慢查询,否则很容易搞出来个metadata lock,阻塞所有读取

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。