一、安装mysql和xtrabackup

(1)安装mysql

因为RDS是5.6版本,所以我们本地的mysql数据库要与RDS版本对应。

rpm -ivh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm && yum -y install mysql-server mysql

(2)安装xtrabackup

看我另一篇文章:https://www.cnblogs.com/weiyiming007/p/10281820.html

我这个文章中是安装的xtrabackup2.4,如果是mysql5.6的话,需要安装2.3(如下命令):

yum install epel-release -y

yum -y install percona-xtrabackup-23

MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3。MySQL 5.7版本需要安装 Percona XtraBackup 2.4。

二、准备并解压数据

(1)准备数据

先从阿里云备份好数据;

图中的压缩包就是我准备还原的数据;

1dd9075cd75d94583816ae1a3352f517.png

解压:

[root@saltstack ~]# tar zxf /home/09_gongsifazhan_hins6110701_data_20181203100822.tar.gz -C /data/mysql/

626a129aa02257fa1cc8777d32467a23.png

三、数据恢复

(1)执行如下命令,恢复解压好的备份文件

innobackupex --defaults-file=/data/mysql/backup-my.cnf --user=root --apply-log /data/mysql

看到类似如下输出,显示 completed OK,表示执行成功:

2e4ee2c89571f45f1bfdd86c6dee1e3c.png

(2)修改配置文件

打开/data/mysql/backup-my.cnf,注释掉如下参数(阿里帮助文档只说注释掉三行,启动会失败);

并添加一行内容:skip-grant-tables     #登陆的时候忽略密码;其他教程说登录时不要密码,但是我的不加此行登录时还要密码,

28f2dc2a6c61015ca0f708d7f6f23bc7.png

(3)修改文件属组属主

chown -R mysql:mysql /data/mysql

(4)启动mysql进程

mysqld_safe --defaults-file=/data/mysql/backup-my.cnf --user=root --datadir=/data/mysql &

847b483f00ca48bc35cc50063874a658.png

查看进程:

cbde2d8dbd39df213fcb2186ed979756.png

四、登录数据库,验证

(1)登录

mysql -uroot      #登录不用密码

3e88be30f37546f7d4e118469998b68d.png

(2)查看数据,验证

8097eb7b1f68703cb7d752d28bf5e29c.png

7a5ed37ed3242123d35b48aedab545af.png

至此,数据恢复完成;

(3)

如果需要修改root密码,可以执行如下操作;

mysql> use mysql;

mysql> update user set password=password('123456') where user='root';         #设置root密码

mysql> update user set host='%' where user='root' AND host='localhost';

mysql> flush privileges;                        #先刷一次

mysql> grant all privileges on *.* to root@'%' identified by '123456';        #执行这条命令

mysql> flush privileges;                        #再刷一次

五、可能遇到的问题

88a3cfcd034cb5fb926419aebb8f63c4.png

解决方法:

执行删除命令:rm -rf /data/mysql/ib*

删除:ibdata1、ib_logfile0、ib_logfile1文件

再次尝试启动mysql

参考文档:https://blog.csdn.net/liudihedy/article/details/73222001

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐