【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】v7.5.1
dm版本:v1.15.1
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
遇到一个事务无法执行过去,业务可以丢弃这个事务,怎么跳过这个事务呢
“Message”: “startLocation: [position: (mysql-bin.000676, 187961476), gtid-set: f3b21ac0-9c05-11ef-ac4a-1070fda6589c:1-9659368], endLocation: [position: (mysql-bin.000676, 471533477), gtid-set: f3b21ac0-9c05-11ef-ac4a-1070fda6589c:1-9660819]: execute statement failed: commit”,
“RawCause”: "Error 1105 (HY000): message:"raft entry is too large, region 3498005, entry size 33500802" raft_entry_too_large:\u003cregion_id:3498005 entry_size:33500802 \u003e ",
可以使用binlog skip -h跳过操作
具体你看下文档https://docs.pingcap.com/zh/tidb/stable/handle-failed-ddl-statements/
2 个赞
在 DM v6.0 版本之后 sql-skip、handle-error 均已经被 binlog 替代,使用 binlog 命令可以跳过该类错误
在 DM v2.0 版本之后 sql-skip 已经被 handle-error 替代,handle-error 可以跳过该类错误
2.0之前用sql-skip, 2.0+到6.0用handle-error,6.0之后用binlog
命令:
查看状态
tiup dmctl --master-addr=192.168.1.1:8261 query-status
暂停任务:
pause-task
恢复任务
tiup dmctl --master-addr=192.168.1.1:8261 resume-task mysql-tidb
2.0-5.0跳过
tiup dmctl --master-addr 192.168.1.1:8261 handle-error mysql_merchant skip
6.0版本以后得跳过:
binlog skip test(task-name)
1 个赞
1 个赞