【问题标题】:MySQL dump of large database appears to be less than original MySQL database itself大型数据库的 MySQL 转储似乎少于原始 MySQL 数据库本身
【发布时间】:2014-06-27 22:23:27
【问题描述】:

我正在备份一个大小约为 190 GB 的数据库。我想将数据库备份到本地文件。这是我正在使用的命令:

mysqldump -u root -p tradeData > /db_backup/tradeData.sql

我的机器上有足够的空间。我试了很多次都没有出错,但我总是得到一个大小约为 122GB 的结果文件。

有人有备份大型数据库的经验吗?我的机器是 Linux 的。

【问题讨论】:

  • 你说DB是190 GB在什么地方?在哪里?你怎么知道?转储是122GB,但你怎么知道它不完整?
  • 我使用this material 来检查数据库的大小。
  • 这不会为您提供本地数据库转储与系统中实际内容之间的一对一连接。实际 DB 具有仅当 DB 实际上是数据库中的 DB 时才存在的索引和数据。
  • 知道了。我正在将备份文件导入数据库,然后比较它们的大小。
  • 非常感谢。这很有帮助。

标签: mysql database backup mysqldump


【解决方案1】:

使用像 the SQL query here 这样的信息不会在本地数据库转储和系统中的实际内容之间建立一对一的连接。实际数据库具有仅当数据库实际上是数据库中的数据库时才存在的索引和数据。正如RolandoMySQLDBA 解释的那样:

从转储文件的大小,很难判断,因为结合 数据页和索引页的总大小可能远小于大小 的 ibdata1 转储是从创建的。

所以我的猜测是,与裸转储相比,您的数据库包括 InnoDB 表以及其他会使数据库膨胀的东西。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    • 2013-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多