RDS恢复其中某个数据库备份的流程注意:我司RDS是通过xtrabackup工具物理全量备份。 流程: 1.首先登录管理中心》业务管理》云数据库MYSQL》点管理进去,点备份,选择需要的备份文件,下载到本地或者一台云服务器上(以下教程为云服务器)。 2.在云服务器上安装mysql和xtrabackup,版本必须与RDS一致。(我司xtrabackup版本为 8.0.22) 3.下载的备份文件上传到云服务器上,通过xtrabackup恢复整个数据库。 4.根据需要,导出单个或者多个数据库文件,格式.sql 5.然后通过phpmyadmin,或者其他工具把导出的.sql文件导入回RDS恢复成功。 以下为单个数据库恢复具体操作步骤: 版本:rds数据库mysql 8.0 ,xtrabackup 8.0.22。 1.先开通了一台linux系统云服务器,通过宝塔面板安装好mysql8.0,将下载的rds物理备份auto_269_xxx.tar.gz上传到服务器。 2.安装xtrabackup 8.0.22 访问 https://www.percona.com/downloads 下载 xtrabackup 8.0.22 。 [root@ebs-149559 ~]# wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.22-15/binary/redhat/7/x86_64/percona-xtrabackup-80-8.0.22-15.1.el7.x86_64.rpm # 安装 xtrabackup 8.0.22 [root@ebs-149559 ~]# yum install -y percona-xtrabackup-80-8.0.22-15.1.el7.x86_64.rpm # 解压物理备份文件 3.通过xtrabackup恢复备份文件 [root@ebs-149559 ~]# tar zxvf auto_269_xxx.tar.gz # 停止mysql数据库 [root@ebs-149559 ~]# service mysqld stop # 修改 my.cnf 替换 lower_case_table_names=0 [root@ebs-149559 ~]# sed -i '/lower_case_table_names/c lower_case_table_names=0' /etc/my.cnf # 删除mysql数据库目录下所有文件 [root@ebs-149559 ~]# rm -rf /www/server/data/* # 恢复前准备 [root@ebs-149559 ~]# xtrabackup --prepare --target-dir=auto_269_xxx # 恢复数据 [root@ebs-149559 ~]# xtrabackup --copy-back --target-dir=auto_269_xxx # 重置数据库目录权限 [root@ebs-149559 ~]# chown mysql:mysql /www/server/data/ -Rf # 启动数据库,启动后数据库root密码为之前rds的root密码。 [root@ebs-149559 ~]# service mysqld start 4.导出单个库,参考:https://faq.myhostadmin.net/faq/listagent.asp?unid=566 5.通过Navicat 导入恢复,参考:https://faq.myhostadmin.net/faq/listagent.asp?unid=430 以上为参考流程,具体操作以实际为准。 如需我司提供代为操作恢复备份,请提交工单收费处理(300元/次)。
|