gpt4 book ai didi

mysql - 如何备份 MySQL 数据库?

转载 作者:可可西里 更新时间:2023-11-01 07:46:09 27 4
gpt4 key购买 nike

在备份具有数百万条目的数据库时,我必须考虑什么?有没有我可以使用的工具(可能与 MySQL 服务器捆绑在一起)?

最佳答案

根据您的要求,我自己使用了几个选项:

  • 如果您不需要热备份,请关闭数据库服务器并在文件系统级别进行备份,即。 e.使用 tar、rsync 或类似工具。
  • 如果你确实需要数据库服务器继续运行,你可以从mysqlhotcopy开始。工具(一个 perl 脚本),它锁定正在备份的表并允许您选择单个表和数据库。
  • 如果您希望备份可移植,您可能需要使用mysqldump。 , 它创建 SQL 脚本来重新创建数据,但是比 mysqlhotcopy 慢
  • 如果您在某个时间点有数据库的副本,您也可以将二进制日志(从那个时间点开始)保存在安全的地方。这很容易做到,并且不会干扰服务器的运行,但恢复速度可能不是最快的,您必须确保不会遗漏部分日志。

我没有尝试过但对我来说有意义的方法:

  • 如果您有像 ZFS 这样的文件系统或在 LVM 上运行,那么通过文件系统快照来创建数据库快照可能是个好主意,因为它们非常非常快。请记住在整个操作过程中确保数据库的状态一致,例如。 G。通过执行 FLUSH TABLES WITH READ LOCK(当然,之后不要忘记 UNLOCK TABLES)

另外:

  • 您可以使用主从设置将您的生产服务器复制到另一台机器或同一台机器上的第二个实例,然后对复制的副本执行上述任何操作,而不用管您的生产机器。除了连续运行,您还可以定期启动从站,让它读取二进制日志,然后再次关闭它。
  • 我觉得,mysql cluster和企业版的工具比较多,但是我没试过。

关于mysql - 如何备份 MySQL 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1524542/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com