更新时间:2025-07-16 GMT+08:00
分享

新建物理备份恢复任务

注意事项

  • 恢复时建议勾选系统数据库,不勾选系统数据库恢复出来的文件无法用来启动实例,仅当做数据文件存储。
  • 此章节适用于MySQL单机任务恢复到MySQL单机环境。
  • 此章节适用于MySQL集群任务恢复到MySQL单机环境。
  • 若MySQL集群任务恢复到MySQL集群环境,且恢复成功后,要保证恢复目标机的集群主从关系,请参考MySQL集群恢复到集群环境
  • 此章节只适用于MySQL主机版环境。
  • 要求备份和恢复端的实例名,用户名和密码一致,缺一不可。
  • 不支持跨MySQL版本的恢复。
  • MySQL8.0以上版本恢复数据源为部分数据库恢复,则恢复后存在可查询到未恢复的数据库但不能使用的情况,不影响使用,若需清理,可在数据文件路径下新建该数据库同名文件夹,再使用命令drop database 数据库名清理数据库。
  • 多实例恢复时,仅支持选择单个实例下的数据源恢复。
  • 恢复过程中,数据文件丢失导致数据库服务停止失败,则有可能导致恢复失败,如果恢复失败,可手动停止数据库服务,再次发起恢复,则恢复成功。
  • 数据库中关闭了MySQL事务的自动提交,会导致不同未提交(commit)事务在对同一表进行操作时,出现wait for metadata lock状态,导致数据库线程卡住,致使恢复任务卡住。
  • 恢复界面选择的数据库配置文件(my.cnf),如果其中包含多实例配置,恢复后需手动调整目标恢复路径中的配置文件,否则,实例可能启动失败。
  • MySQL恢复路径和配置文件中相关路径需要满足数据库安装用户有增删读写权限。
  • MySQL数据库恢复选择覆盖选项,会覆盖生产机上恢复目录下的数据。
  • 恢复mysql可能会失败(断电断网等原因),不建议恢复原机原位置,如果恢复原机原位置失败,可新建一个端口号相同的新的实例,再次恢复。
  • 确认客户端主机上mysql数据库版本号,如果版本号是5.5,物理备份不建议使用归档日志备份,同时物理备份的完备、增倍和差备的数据不建议进行不完全恢复,因为mysql5.5没有GTID选项,会导致恢复数据丢失等未知情况。
  • MySQL恢复完成后,数据库无法启动,可能的原因为指定的目标机my.cnf配置文件中某些配置项是备份数据原主机没有的,需要手动确定目标机my.cnf文件配置项与数据原主机my.cnf文件配置项相同。
  • MySQL8.0.11版本表级恢复不支持带全文索引结构的表恢复,否则恢复之后,目标实例下的表损坏,会导致实例异常。此时,删除该表,实例可以恢复正常。
  • 表级恢复仅支持5.6及以上版本数据库做恢复。
  • D2C、D2D2C不支持表级恢复。

操作步骤

  1. 租户或操作员登录管理控制台,单击“定时数据保护 > 恢复备份数据 > 新建”:

    图1 新建数据恢复任务

  1. 选择要恢复的任务,单击“下一步”:

    图2 选择要恢复的任务
    • 备份介质默认选中OFS,可更换为云备份存储库类型,将从云备份存储库中恢复数据。
    • 选择介质为云备份存储库后,常规选项中,相比较选择介质为OFS,新增恢复选项“云传输并发数”。

  1. 选择要恢复的时间点和数据源,可以选择恢复整个实例或者单个、多个数据库:

    图3 选择时间点
    图4 选择数据源

    如果是要恢复到最新状态,推荐选择最新时间点。

  1. 选择恢复客户端、恢复位置、用户名称、恢复实例等信息,单击“下一步”。

    图5 Linux恢复位置

  • “客户端”:单击选择按钮,可弹框选择,只能选择同类型客户端,可选原机,也可选择异机。
  • “用户名称”:下拉框可选,选择数据库安装用户。
  • “数据文件恢复路径”:单击浏览按钮,可弹框选择,也可直接手动填写,路径为真实有效路径,路径权限和属主正确。

    可以在源主机通过ps -ef | grep mysql 命令查询mysqld的进程 --datadir参数来确定路径。

  • “数据库配置文件路径”:单击浏览按钮,可弹框选择,也可直接手动填写,配置文件为真实有效配置文件,一般为/etc/my.cnf,启动实例可用。
  • “实例”:下拉框可选,选择要恢复出来的实例,不选择代表无实例恢复。为了避免新实例与环境中已有实例发生端口冲突,无实例恢复指定的配置文件中,需要加上端口号,端口号不可以与原实例端口号一样,否则数据库启动会抛端口号被占用。可通过ps查看到新实例进程信息,登录MySQL时通过-S 选项指定新实例的socket文件来登录新实例。
  • “覆盖现有数据”:默认不开启。开启后会在恢复过程中覆盖现有数据,此数据为“数据文件恢复路径”下的数据。选择的数据文件恢复路径下如存在数据文件,需开启此选项。
  • “自定义脚本”:默认为不开启。开启后可勾选恢复前、恢复成功、恢复失败等执行条件,相应脚本设置启用。
  • “多通道恢复”:默认不开启,开启后可设置恢复通道数,可进行多线程恢复,提升恢复效率,范围0~32。
  • “不完全恢复”:适用于增量备份、差异备份、归档日志备份时间点恢复,默认不开启,开启后可选择恢复时间点,恢复后使数据库联机联动开启,恢复类型为不完全恢复,可以恢复指定时间点状态。
  • “恢复前停止数据库服务”:默认不开启,开启后恢复任务会在开始恢复数据前,停止实例服务,如果开启恢复后使数据库联机,则必须开启恢复前停止数据库服务,否则恢复失败。
  • “恢复后使数据库联机”:默认不开启,开启后恢复任务恢复完实例后,根据新生成的配置文件启动新实例。如果实例未启动成功,需要去数据库环境中查看数据库日志,并检查配置文件各项配置是否正确。
  • “恢复数据参数”:单击添加按钮,可以添加参数及参数值,支持参数如下。
    • OptionForPXBPrepare:对恢复的数据应用redo日志,保证数据一致性,在prepare阶段可对其进行参数选项配置,例如可填入选项: --parallel=4,具体可配置参数请参考官方文档。
    • OptionForPXBMove:对恢复的数据进行应用后移动恢复数据至数据目录,在移动数据阶段可对其进行参数选项配置,例如可填入选项: --parallel=4,具体可配置参数请参考官方文档。
    • 若想手动应用MySQL Binglong日志,可用如下命令手动应用Binglog日志:mysqlbinlog log1 log2 --start-position=xxx --stop-datetime=xxxx-xx-xx xx:xx:xx | mysql -uxxx -pxx -S -h
    • 参数说明:--start-position转储日志的起始位置。--stop-datetime转储日志的截止时间,可使用 mysqlbinlog --help 查看各参数说明。
    • 在恢复MySQL数据库配置文件路径my.cnf时,需要保证my.cnf中配置的文件路径为空,否则会影响正在使用该配置文件的实例。
  1. 恢复信息确认,确认之后在输入框输入“YES”,单击“确定”后,新建任务完成。

    图6 完成创建信息确认

相关文档