gpt4 book ai didi

mysql - xtrabackup 恢复单个数据库?

转载 作者:行者123 更新时间:2023-11-29 07:18:33 25 4
gpt4 key购买 nike

据我所知,Percona XtraBackup 获得了很多赞誉,但我发现它非常令人沮丧。我正在使用:

root@GR-00258:~# xtrabackup --version
xtrabackup version 2.4.9 based on MySQL server 5.7.13 Linux (x86_64) (revision id: a467167cdd4)

我可以毫无问题地创建一个或多个单一数据库的备份,但似乎没有任何方法可以恢复它们。我找到的唯一方法是将它们作为完整备份恢复到空的 /var/lib/mysql 中,这当然意味着 mysql 不会启动。这似乎是一个非常糟糕的恢复工具 - 如果无法恢复单个数据库,那么能够备份这些数据库的目的是什么?

废话不多说了——有没有办法让它发挥作用,还是我只是在浪费时间?我知道,我可以将 mysqldump 用于 csv 文件,但当数据库为 ~500GB - ~1TB 时,这不是一个有吸引力的选择。

最佳答案

Percona XtraBackup 允许您在不阻止客户端访问的情况下对 MySQL 数据目录进行物理备份。进行备份比 mysqldump 快得多。

恢复也很快。您所要做的就是将备份文件复制到新的数据目录(在执行准备步骤之后,您可以在创建备份时执行此操作)。

恢复完整备份时,目标 MySQL 服务器正在运行时无法执行此操作。您必须关闭 mysqld,然后将文件复制到位,确保文件具有正确的所有权和权限,然后启动 mysqld

在不覆盖的情况下导入选定的表或模式并不容易。但它可能的:

准备备份时必须使用--export 选项。然后您可以将单个表空间导入现有的 MySQL 数据目录。但不幸的是,你必须一次只做一个表空间。无法一步完成一个架构中的所有表。您应该能够编写脚本来执行此操作。

在此处查看从备份导入表空间的完整示例:https://www.percona.com/doc/percona-xtrabackup/8.0/xtrabackup_bin/restoring_individual_tables.html

关于mysql - xtrabackup 恢复单个数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57791595/

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