我使用percona的 pt-archive 实用程序归档大表。但它填补了我的二进制日志。
是否有任何选项可以在从此实用程序归档期间禁用二进制日志记录。
我已阅读其文档,我们可以在 - analyze 选项中执行某些操作,但尚未清除如何定义此选项。因为此选项还可以优化/分析我不想要的表格。
你能提供任何有用的例子吗?
答案 0 :(得分:1)
简而言之,您需要添加选项 b = true 和--本地
请注意,b = true是DSN选项,需要根据需要在--source或--dest之后添加。我将在此答案的底部显示一个示例。
您可以轻松进行此虚拟测试:
CREATE TABLE `dummyids` (
`ids` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`ids`)
) ENGINE=InnoDB ;
insert into dummyids
select @i := @i + 1 as id
from (select true union all select true) t0
join (select true union all select true) t1
join (select true union all select true) t2
join (select true union all select true) t3
join (select true union all select true) t4
join (select true union all select true) t5
join (select true union all select true) t6
join (select true union all select true) t7
join (select true union all select true) t8
join (select true union all select true) t9
join (select true union all select true) t10
join (select true union all select true) t11
join (select true union all select true) t12
join (select true union all select true) t13
join (select true union all select true) t14
join (select true union all select true) t15
join (select true union all select true) t16
join (select true union all select true) t17
join (select true union all select true) t18
join (select true union all select true) t19
;
现在您可以检查binlog的大小和最后一个位置(这将是最新的binlog,请更改您的路径和binlog名称)
# ls -lh /path/to/mysql/data/
# sudo mysqlbinlog mysql-bin.000012 | tail -n 100
在运行pt存档后记录要比较的binlog的位置和大小
pt-archiver --source h=localhost,D=bar,t=dummyids,b=true --local --where "1 = 1" --limit=10000 --progress=50000 --txn-size=50000 --statistics --purge --bulk-delete
现在运行命令再次检查binlog的大小和最新位置,您应该注意到它们没有更改。
希望这可以帮助更多的人解决同一问题。
percona工具手册pt-archiver options
中说明了这些选项