• 沒有找到結果。

# at 126

#200316 17:54:14 server id 1 end_log_pos 157 CRC32 0xfcc47ad6 Previous-GTIDs

# [empty]

# at 157

#200316 17:54:27 server id 1 end_log_pos 204 CRC32 0xa7febd1f Rotate to mysqlbin.

000002 pos: 4

SET @@SESSION.GTID_NEXT= 'AUTOMATIC' /* added by mysqlbinlog */ /*!*/;

DELIMITER ;

# End of log file

/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;

/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;

1.10.11 通过备份文件恢复云数据库(MySQL)实例数据

操作场景

云数据库RDS服务支持使用已有的自动备份和手动备份,将实例数据恢复到备份被创 建时的状态。该操作恢复的为整个实例的数据。

通过备份文件恢复到实例上,会从OBS备份空间中将该备份文件下载到实例上进行全 量恢复,恢复时长和实例的数据量有关,平均恢复速率为40MB/s。

限制条件

● 账户余额大于等于0元,才可恢复到新实例。新实例将作为用户新创建的实例进行 收费。

● RDS for MySQL不支持将备份恢复到原实例,如有需要,请先将备份恢复到同版 本的新实例或已有实例,然后将该实例的IP修改为原实例的IP。

● 本地SSD盘实例不支持恢复到已有实例。

● SSD云盘的实例恢复到本地SSD盘实例时,提示“暂不支持恢复到该规格的实例,

请选择其它规格”。

操作步骤

步骤1 登录管理控制台。

步骤2 单击管理控制台左上角的 ,选择区域和项目。

步骤3 在页面左上角单击 ,选择“数据库 > 云数据库 RDS”。进入云数据库 RDS信息页 面。

步骤4 在左侧导航栏单击“备份管理”,选择需要恢复的备份,单击操作列的“恢复”。

您也可在“实例管理”页面,单击指定的实例名称,在左侧导航栏单击“备份恢 复”,在“全量备份”页签下单击目标备份对应的操作列中的“恢复”。

步骤5 选择需要的恢复方式,单击“确定”。

● 新实例:将备份恢复到新创建的实例上。

选择恢复到“新实例”,单击“确定”,跳转到“恢复到新实例”的服务选型页 面:

– 数据库引擎和数据库版本,与原实例相同,不可重置。

– 存储空间大小默认和原实例相同,且必须大于或等于原实例存储空间大小。

– 其他参数默认,用户如需设置,请参见购买实例。

1-45 恢复到 MySQL 新实例

● 已有实例:将备份数据恢复到已经存在的实例上。

a. 勾选“我确认恢复到目标实例会导致数据被覆盖,恢复过程中数据库不可 用。目标实例引擎类型、版本号要求与原实例相同,且存储空间大于等于原 实例。”,单击“下一步”。

b. 确认恢复信息无误,单击“确定”。

须知

– 如果目标数据库实例已被删除,则不可恢复到已有实例。

– 恢复到已有实例会导致实例数据被覆盖,且恢复过程中实例将不可用。

– 只可选择与原实例相同引擎,相同版本或高版本的实例。

– 请确保目标实例的存储空间大于或等于当前实例的存储空间,否则会导致任务 下发失败。

– 本地SSD盘实例不支持恢复到已有实例。

若您已开启高危操作保护,在“身份验证”弹出框中单击“获取验证码”,正确 输入验证码并单击“确定”,页面自动关闭。

通过进行二次认证再次确认您的身份,进一步提高帐号安全性,有效保护您安全 使用云产品。关于如何开启操作保护,具体请参考《统一身份认证服务用户指 南》的内容。

1-46 恢复到已有 MySQL 实例

步骤6 查看恢复结果。

说明

恢复云数据库(MySQL)实例数据,对原实例没有影响。

● 恢复到新实例

为用户重新创建一个和该备份数据相同的实例。可看到实例由“创建中”变为

“正常”,说明恢复成功。

恢复成功的新实例是一个独立的实例,与原有实例没有关联。如需使用只读实 例,请重新在该实例上进行创建。

新实例创建成功后,系统会自动执行一次全量备份。

● 恢复到已有实例

在“实例管理”页面,可查看目标实例状态为“恢复中”,恢复完成后,实例状 态由“恢复中”变为“正常”。如果目标实例下存在只读实例,只读实例的状态 与目标实例一致。

恢复成功后,会执行一次全量备份。

您可以通过“任务中心”查看详细进度和结果。具体请参见任务中心。

----结束

后续操作

恢复成功后可以登录数据库实例进行验证。

云数据库MySQL不支持将备份恢复到原实例,如有需要,在恢复到新实例或已有实例 后,使用DRS将新实例数据迁移到原实例或者修改新实例内网IP。

常见问题

如何找回误删除数据库和数据表 如果没有备份该怎么恢复数据

1.10.12 通过备份文件恢复到自建数据库(MySQL)

操作场景

您可根据业务需要,参考下载全量备份文件,并通过备份文件进行本地存储备份或者 恢复数据。

须知

备份文件不支持恢复到本地为Windows操作系统的数据库。

由于开源备份工具(XtraBackup)目前仅支持x86包,不支持ARM,因此ARM的ECS自 建库不能根据本章操作进行备份文件恢复,推荐您可以使用DRS迁移或数据导出导入 的方式,具体请参见数据迁移。

前提条件

通过下载备份文件恢复数据到自建MySQL,请确保恢复目标MySQL版本不低于备份源 RDS for MySQL版本。

恢复数据过程中,您可通过命令查看任务进程:

ps -ef | grep mysql

操作步骤

步骤1 下载qpress程序,并上传到ECS进行安装。

在网站下载文件“qpress-11-linux.x64.tar”, 并上传到ECS上。

tar -xvf qpress-11-linux-x64.tar mv qpress /usr/bin/

步骤2 下载XtraBackup软件,并上传到ECS进行安装。

须知

● 对于MySQL 5.6和5.7,请下载XtraBackup 2.4.9及其以上版本。

● 对于MySQL 8.0,请下载XtraBackup 8.0及其以上版本。

在网站下载XtraBackup,并上传到ECS上,下面以下载“percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm”为例。

rpm -ivh percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm --nodeps --force 步骤3 在ECS上解压下载好的全备文件。

1. 创建一个临时目录,下面以mysqlbackup为例。

mkdir mysqlbackup 2. 解压文件。

– 5.6和5.7版本执行:

xbstream -x -p 4 < ./全备文件.qp -C ./mysqlbackup/

innobackupex --parallel 4 --decompress ./mysqlbackup – 8.0版本执行:

xbstream -x -p 4 < ./全备文件.qp -C ./mysqlbackup/

xtrabackup --parallel 4 --decompress --target-dir=./mysqlbackup 3. 删除“.qp”备份文件。

find ./mysqlbackup/ -name '*.qp' | xargs rm -f 步骤4 应用日志。

5.6和5.7版本执行:innobackupex --apply-log ./mysqlbackup

8.0版本执行:xtrabackup --prepare --target-dir=./mysqlbackup 步骤5 备份数据。

1. 停止MySQL数据库服务。

service mysql stop 说明

如果是MySQL5.7, 需执行如下命令停止MySQL数据库服务:

/bin/systemctl stop mysqld.service 2. 备份原来的数据库目录。

mv /var/lib/mysql/data /var/lib/mysql/data_bak 3. 创建新的数据库目录并修改目录权限。

mkdir /var/lib/mysql/data

chown mysql:mysql /var/lib/mysql/data

步骤6 拷贝全备文件,并修改目录权限。

5.6和5.7版本执行:innobackupex --defaults-file=/etc/my.cnf --copy-back ./

mysqlbackup

8.0版本执行:xtrabackup --defaults-file=/etc/my.cnf --copy-back --target-dir=./mysqlbackup

chown -R mysql:mysql /var/lib/mysql/data 说明

执行本步骤前,需要确保my.cnf配置正确。

/etc/my.cnf

datadir=/var/lib/mysql/data 步骤7 启动数据库。

service mysql start 说明

如果是MySQL5.7, 需执行如下命令启动数据库:

/bin/systemctl start mysqld.service 步骤8 登录数据库,查看数据恢复结果。

mysql -u root show databases

1-47 查看数据恢复结果

----结束

常见问题

如何找回误删除数据库和数据表 如果没有备份该怎么恢复数据

1.10.13 将数据库实例恢复到指定时间点

操作场景

云数据库RDS服务支持使用已有的自动备份,恢复实例数据到指定时间点。

您可根据业务需要,对单个实例进行恢复,也可对实例进行批量恢复。

实例恢复到指定时间点,会从OBS备份空间中选择一个该时间点最近的全量备份下载 到实例上进行全量恢复,再重放增量备份到指定时间点,恢复时长和实例的数据量有 关,平均恢复速率为30MB/s。

约束限制

● 账户余额大于等于0元,才可恢复到新实例。新实例将作为用户新创建的实例进行 收费。

须知

请勿在MySQL实例的生命周期内执行“reset master”命令,以免造成恢复到指 定时间点功能异常。

● RDS for MySQL不支持将备份恢复到原实例,如有需要,请先将备份恢复到新实 例或已有实例,然后将该实例的IP修改为原实例的IP。