全部产品
Search
文档中心

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

更新时间: 2020-08-19

概述

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

详细信息

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

若您需要进行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客户端工具。
      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客户端工具。
      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版