【已解决】TiDM集群MySQL同步到TiDB无报错,但数据未同步过来

【 TiDB 使用环境】测试
【 TiDB 版本】v8.3.0
【复现路径】作为首次接触的新手,按照官网技术手册使用TiUP在单个主机上搭建了一个最低配的TiDB集群和TiDM集群,数据库已经能正常访问,现在正在试验从MySQL同步一个测试表到TiDB中。表中有15条测试数据,完全参考了《 从小数据量 MySQL 迁移数据到 TiDB》的操作说明,采用的是全量同步模式
【遇到的问题:问题现象及影响】
同步任务启动后未出现明显错误,任务状态显示完成度100%,但是目标端没有查到表和数据
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
主机操作系统:Ubuntu 20.04.6 LTS (GNU/Linux 5.4.0-189-generic x86_64)
内存:128G
CPU:16核
磁盘:SSD 2T
上游MySQL版本:Server version: 8.0.23 MySQL Community Server - GPL
【附件:截图/日志/监控】
root@ubuntu-132:~# tiup cluster list
Name User Version Path PrivateKey


tidbdemo tidb v8.3.0 /root/.tiup/storage/cluster/clusters/tidbdemo /root/.tiup/storage/cluster/clusters/tidbdemo/ssh/id_rsa
集群信息


DM所需的权限准备


数据源yaml配置和加载

同步任务yaml配置和启动任务

任务运行的状态

查看DM-worker的情况,数据目录是空的,错误日志也没有内容
image
DM-worker日志中也没有看到异常

但是,目标库就是没有数据,我是不是什么地方忽略了?

去dmworker目录里面看看,应该有个dumper的文件夹,看看里面有没有东西。

1 个赞

或者先授权全部权限试试,排除数据库用户权限的问题,以及查看下DM的日志文件是否有报错信息,有时候重启 DM-master 和 DM-worker 服务可以解决一些同步问题

1 个赞

谢谢指点,我做了如下调整:

  1. 权限
    –上游
    GRANT ALL ON . TO ‘tidbreplication’@‘%’;
    –下游
    grant all on . to root@‘%’;
  2. 重启DM集群
    tiup dmctl --master-addr 192.168.1.132:8261 stop-task task2.yaml &&
    tiup dmctl --master-addr 192.168.1.132:8261 start-task --remove-meta task2.yaml
  3. 运行后状态
  4. 目标库上确认数据同步过来了

操作过程中遇到dm-worker的任务dump目录非空导致失败


根据提示删除此目录后重启成功

1 个赞

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