代码之家  ›  专栏  ›  技术社区  ›  bucabay

进行MySQL大型数据库导出的最佳方法

  •  0
  • bucabay  · 技术社区  · 16 年前

    我通常使用mysqldump导出数据库。然而,当数据库非常大时,直接gzip数据库文件而不涉及MySQL deamon并将其复制到另一个数据库似乎要快得多,强度也要小得多。

    如:

    tar -czvf {db_name}.sql.tgz /var/lib/mysql/{db_name}
    

    我还读了另一篇文章,其中提到:

    rsync /var/lib/mysql/ ...
    

    使用rsync使备份数据库与开发数据库保持同步,这是一个好的选择吗?

    2 回复  |  直到 16 年前
        1
  •  1
  •   Mech    16 年前

    我使用rsync来移动文件,并在其他框中使用它们。我从未在MYSQL运行live时执行过此操作,但我以前从/var/lib/MYSQL中的文件进行过恢复,没有任何问题。这是一种很好的方法,可以在数据库上“复制”到“开发”框中。我建议关闭mysql,移动文件,然后重新启动它。必要时我就是这样做的。

    myqldump为您提供了漂亮整洁的SQL代码,如果您需要在使用sed的过程中“调整”某些东西,那么这很好。

        2
  •  1
  •   Pekka    16 年前

    mysqlhotcopy 使用它,所以它不会完全错误。