为啥在 phpmyadmin 中导入的数据库更小?

Posted

技术标签:

【中文标题】为啥在 phpmyadmin 中导入的数据库更小?【英文标题】:why imported database is smaller in phpmyadmin?为什么在 phpmyadmin 中导入的数据库更小? 【发布时间】:2012-01-14 14:36:57 【问题描述】:

我已经使用 phpmyadmin 转储了一个数据库,并且有 390MB 然后使用命令行将其导入新数据库,然后显示大小为360。

为什么这个导入的数据库更小?谢谢。

【问题讨论】:

【参考方案1】:

当您从数据库中删除数据时,这些记录通常并没有真正从数据库文件中删除,只是标记为已删除 - 以后可以将空间重新用于新记录。导出数据库时,这些已删除的记录自然不会导出,也不会在导入数据库时​​重新创建。

这种重用可以在添加记录时节省一点时间,因为您不必总是使文件变大。并且它在删除记录时节省了 很多 时间 - 从文件中间删除某些内容涉及移动 所有 之后的数据。

【讨论】:

非常感谢你给我解释得这么好。我还有一个问题,如果我现在可以问,有没有办法检查这些到数据库(在同一台服务器上)并验证它们是否真的有相同的(未删除,工作)条目,这样我就可以放心了导入已成功完成? * 我正在使用 Linux、mysql、phpmyadmin、webmin 等。 @Droid-Bird 我不知道,即使我这样做了,你也应该提出一个新问题。 您应该在两个文件之间执行 MD5 检查。 @ReneBrakus OP 已经确定,在重新导入数据后,生成的数据文件要小得多。您如何想象它们具有相同的 MD5 哈希值? (尽管发生了几乎不可能发生的碰撞。)

以上是关于为啥在 phpmyadmin 中导入的数据库更小?的主要内容,如果未能解决你的问题,请参考以下文章

爬虫可以更新 AWS Glue 中导入的表吗?

如何编写要在 SAS 中导入的原始数据

如何从 access 中导入的数据创建一组列表?

如何允许组件中的函数访问构造函数中导入的工厂?

在 Javascript 中导入的不同方式? [复制]

如何更新/覆盖当前在 R 中导入的 csv 文件