如何对RDS MySQL实例的数据库进行备份及恢复

概述

本文主要介绍如何对RDS MySQL实例的数据库进行备份及恢复。

详细信息

若您需要进行MySQL单库单表恢复,且实例为如下版本时,请参见MySQL单库单表恢复。若其他版本的实例需要恢复数据,且使用了数据库备份DBS产品时,可以通过数据库备份DBS进行单表恢复,详情请参见单表恢复

  • MySQL 8.0 高可用版(本地SSD盘)

  • MySQL 5.7 高可用版(本地SSD盘)

  • MySQL 5.6 高可用版

通过mysqldump进行库备份及恢复

  1. 在Linux系统的ECS实例中,安装MySQL客户端工具。

    说明

    说明:您也可以直接在实例中,使用 yum install mysql命令安装MySQL客户端。

    1. 执行以下命令,下载MySQL客户端工具。

      wget http://dev.mysql.com/Downloads/MySQL-5.6/MySQL-server-5.6.21-1.rhel5.x86_64.rpm

    2. 执行以下命令,安装MySQL客户端工具。

      sudo rpm -ivh http://dev.mysql.com/Downloads/MySQL-5.6/MySQL-server-5.6.21-1.rhel5.x86_64.rpm
  2. 执行以下命令,对RDS实例执行库备份操作。

    mysqldump -h [$Host] -u [$User] -P [$Port] -p --opt --default-character-set=utf8 --triggers --hex-blob [$Database_Name] > /tmp/db_name.sql
    说明
    • [$User]为数据库登录用户。

    • [$Port]为数据库端口号。

    • [$Host]为数据库地址。

    • [$Database_Name]为数据库的库名。

    输入密码后,mysqldump将自动完成备份操作,系统显示类似如下。备份的相关信息请参见RDS for MySQL mysqldump选项设置

  3. 执行以下命令,确认成功生成SQL文件。

    ll /tmp/db_name.sql
  4. 若您需要进行RDS实例数据恢复操作,可以根据备份文件,执行以下命令。

    mysql -h [$Host] -u [$User] -P [$Port] -p [$Database_Name] < /tmp/db_name.sql

    系统显示类似如下,输入密码后,将完成恢复操作。

通过备份集进行恢复

RDS备份集会将所有数据都进行备份,若你需要恢复数据,请参考以下内容。

  1. 在Linux系统的ECS实例中,安装MySQL客户端工具。

    说明

    您也可以直接在实例中,使用yum install mysql命令安装MySQL客户端。

    1. 执行以下命令,下载MySQL客户端工具。

      wget http://dev.mysql.com/Downloads/MySQL-5.6/MySQL-server-5.6.21-1.rhel5.x86_64.rpm
    2. 执行以下命令,安装MySQL客户端工具。

      sudo rpm -ivh http://dev.mysql.com/Downloads/MySQL-5.6/MySQL-server-5.6.21-1.rhel5.x86_64.rpm
  2. 登录RDS控制台,单击目标实例ID,选择备份恢复,单击目标备份集右侧恢复,创建新的RDS实例。

  3. 确认新实例的数据正常后,您可以将需要的数据从新实例迁移回原实例,详情请参见RDS实例间的数据迁移

适用于

  • 云数据库RDS MySQL版