同一数据库在清空整个数据库后导入 3 次 3 次,令人惊讶的是每次它都显示不同数量的记录。为什么?
信任行数是不正确的,如图所示,它显示了错误建议的近似值。那么问题来了,如何保证数据库是正确的,没有记录丢失呢?注意:快捷方式 require 不能对每个表使用计数,它会花费很多时间。
最佳答案
令人惊讶的是,MySQL 在数字方面真的很糟糕。对于 InnoDB 表,这些通常是对它包含多少行的估计,它们可能是错误的。
它计算您看到的数字的方法是计算表数据的总大小,然后除以以字节为单位的平均行大小。这通常是您数据的足够好的近似值,但它可能会产生很大的误导,最多相差 100 倍。
唯一确定的方法是执行 COUNT(*)
,这可能需要一些时间在非常活跃的表上进行计算。
关于mysql - 相同的 MySQL 数据库导入显示不同数量的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36855606/