mysql&maatkit:mk-table-checksum会做什么样的阻塞?

我们有两台设置简单的主从复制的MySQL服务器。 我们目前使用所有的MyISAM表,但将来可能会转移到InnoDB。 我们最大的桌子超过2GB。

我想使用mk-table-checksum工具在表上运行校验和,以便我可以确定复制工作正常。

“ 高性能MySQL”和这个mk-table-checksum教程都推荐使用--sleep--chunk-size来避免数据库阻塞。

我的问题是关于“阻塞”的问题:

  1. 这里可能会发生什么样的阻塞? 这只是简单地引用表上的读锁吗?
  2. 如果我不指定--chunk-size ,那么这些校验和中的一些需要4-5分钟。 这个表是否会被写入locking?

它只是指表上的读/写锁。 如果使用MySQL中内置的默认校验和实现,则读取locking; 如果您使用–replicate,则执行INSERT..SELECT语句。