Brian G Asked: 2009-07-07 05:03:50 +0800 CST2009-07-07 05:03:50 +0800 CST 2009-07-07 05:03:50 +0800 CST 如何获取 MySQL 中所有表的行数 772 如何获取 MySQL 中所有表的行数。如果这更容易的话,我可以按数据库来做这个数据库。 目的是粗略检查我刚刚设置的数据库复制。 mysql 5 个回答 Voted pQd 2009-07-07T05:05:36+08:002009-07-07T05:05:36+08:00 改用mk-table-checksum。文档可能很吓人,但与 mk-checksum-filter 一起使用是非常有用的工具。 dezwart 2009-07-09T23:47:31+08:002009-07-09T23:47:31+08:00 如果您想检查您的复制设置,您是否考虑过使用: SHOW SLAVE STATUS检查Seconds_Behind_Master值 SHOW MASTER STATUS不如上述有用 2009-07-31T13:12:36+08:002009-07-31T13:12:36+08:00 ./mysql -utest -ptest dbname -e '显示表状态\G' | awk '/名称/ {名称 = $2}; /Rows/ {print $2"\t"name}' | 排序-gr rs.emenu 2010-11-30T10:00:09+08:002010-11-30T10:00:09+08:00 我发现这篇文章是检索所有表格及其行数的一种非常简洁明了的方法。 MWE 2019-07-22T08:03:47+08:002019-07-22T08:03:47+08:00 也有用的可能是: show table status; 必须为每个数据库执行。只需为您当前使用的数据库拍摄它。替代但不是快速的方法:使用信息模式: select TABLE_SCHEMA, TABLE_NAME, ENGINE, TABLE_ROWS from information_schema.tables; -> ENGINE 可能很重要,也许您想要过滤有关 performance_schema 或 information_schema 等的信息,这些信息不会被复制。
改用mk-table-checksum。文档可能很吓人,但与 mk-checksum-filter 一起使用是非常有用的工具。
如果您想检查您的复制设置,您是否考虑过使用:
./mysql -utest -ptest dbname -e '显示表状态\G' | awk '/名称/ {名称 = $2}; /Rows/ {print $2"\t"name}' | 排序-gr
我发现这篇文章是检索所有表格及其行数的一种非常简洁明了的方法。
也有用的可能是:
必须为每个数据库执行。只需为您当前使用的数据库拍摄它。替代但不是快速的方法:使用信息模式:
-> ENGINE 可能很重要,也许您想要过滤有关 performance_schema 或 information_schema 等的信息,这些信息不会被复制。