【发布时间】:2018-06-13 22:19:28
【问题描述】:
我正在尝试使用 pt-archiver 清除 mysql 表并遇到一个奇怪的问题。
假设以下查询返回 60789 行。
SELECT COUNT(*) FROM abc WHERE created_at BETWEEN '2008-09-01 00:00:00' AND '2008-09-05 23:59:59';
我正在使用以下 pt-archiver 语法来清除行。
/usr/local/bin/pt-archiver --source h=localhost,u=root,p=abcdef,D=cbs_production,t=abc \
--where "created_at >= '2008-09-01 00:00:00' AND created_at <= '2008-09-05 23:59:59'" \
--purge --sleep-coef 1.0 --txn-size 1000 --progress=1000 --statistics
所以它开始在每次迭代中删除第 1000 行,但当它完成 61000 时,它会永远挂起,并且不会删除剩余的 789 行。
我尝试了以下版本的 Percona Toolkit。 pt-archiver 3.0.9 和 pt-archiver 3.0.10
我也查阅了以下帖子,但没有任何效果。
https://bugs.launchpad.net/percona-toolkit/+bug/1096274
【问题讨论】:
-
不太确定您在 SO 上寻求什么样的帮助,因为这是一个面向 sw 开发人员的问答网站。你没有编程问题,你需要弄清楚为什么一个工具没有做它应该做的事情。 DBA SE 站点或 percona 自己的支持论坛会是更好的问题候选者。