mysql - 相同的 MySQL 数据库导入显示不同数量的记录

标签 mysql database import backup

同一数据库在清空整个数据库后导入 3 次 3 次,令人惊讶的是每次它都显示不同数量的记录。为什么?

第一次导入: enter image description here

第二次导入: enter image description here

第三次导入: enter image description here

信任行数是不正确的,如图所示,它显示了错误建议的近似值。那么问题来了,如何保证数据库是正确的,没有记录丢失呢?注意:快捷方式 require 不能对每个表使用计数,它会花费很多时间。

最佳答案

令人惊讶的是,MySQL 在数字方面真的很糟糕。对于 InnoDB 表,这些通常是对它包含多少行的估计,它们可能是错误的。

它计算您看到的数字的方法是计算表数据的总大小,然后除以以字节为单位的平均行大小。这通常是您数据的足够好的近似值,但它可能会产生很大的误导,最多相差 100 倍。

唯一确定的方法是执行 COUNT(*),这可能需要一些时间在非常活跃的表上进行计算。

关于mysql - 相同的 MySQL 数据库导入显示不同数量的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36855606/

相关文章:

mysql - 不确定 SQL Select 查询

php - 当在应用程序中删除所有输入值时,如何设置自动增量以在 mysql 上重置

database - 为什么数据库不被视为全局状态的一种形式?

csv - 如何将 ".csv "数据文件导入 Redis 数据库

java - Gson -> 导入带有对象的 JSON

php - Codeigniter如何删除子查询中的 "`“

php - SQLSTATE[HY000] [2002] 无法建立连接

sql - 如果引用了 customer 表,我如何将数据插入到 cars 表中?

mysql - 比较 MySQL 中的变量 VS 数组

Swift PaperOnboarding 模块导入错误