mysql转储文件大小和数据库大小的差异

时间:2014-12-29 08:48:25

标签: mysql mysqldump

大家好,我对mysql文件转储大小和数据库大小有所不同。

我的数据库大小为238MB,同样的数据库转储大小为297MB。为什么这么大的变化? 任何人都能解释一下吗?

3 个答案:

答案 0 :(得分:4)

运行mysqldump时,只会在SQL语句中转储数据。索引不会被复制。当SQL加载到另一台服务器时,索引会重建。

答案 1 :(得分:4)

转储文件是一个文本文件。当您将DB的内部数据转换为文本时,有许多扩展:

  • 内部可能为4个字节的数字将写为123456
  • 之类的数字
  • 字符串周围有引号,字符串中的特殊字符可能会被转义
  • 每列之间都有逗号,行周围有括号

答案 2 :(得分:1)

对于一个良好的标准化数据库,数据库大小明显小于转储文件。

因为数据库使用了大量数字,所以我有一个数据库,其转储为200 mb,但是数据库中只有80 kb。

正如Barmar所说,在转储期间,数字会转换为字符,1234567891使用1个整数存储,或3个字节,但使用10个字节。