一、安装mysql和xtrabackup
(1)安装mysql
因为RDS是5.6版本,所以我们本地的mysql数据库要与RDS版本对应。
rpm -ivh /mysql-community-release-el6-5.noarch.rpm && yum -y install mysql-server mysql
(2)安装xtrabackup
看我另一篇文章:/weiyiming007/p/10281820.html
我这个文章中是安装的xtrabackup2.4,如果是mysql5.6的话,需要安装2.3(如下命令):
yum -y install percona-xtrabackup-23
MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3。MySQL 5.7版本需要安装 Percona XtraBackup 2.4。
二、准备并解压数据
(1)准备数据
先从阿里云备份好数据;
图中的压缩包就是我准备还原的数据;
解压:
[[emailprotected] ~]# tar zxf /home/09_gongsifazhan_hins6110701_data_1203100822.tar.gz -C /data/mysql/
三、数据恢复
(1)执行如下命令,恢复解压好的备份文件
innobackupex --defaults-file=/data/mysql/backup-f --user=root --apply-log /data/mysql
看到类似如下输出,显示 completed OK,表示执行成功:
(2)修改配置文件
打开/data/mysql/backup-f,注释掉如下参数(阿里帮助文档只说注释掉三行,启动会失败);
并添加一行内容:skip-grant-tables#登陆的时候忽略密码;其他教程说登录时不要密码,但是我的不加此行登录时还要密码,
(3)修改文件夹属组属主
chown -R mysql:mysql /data/mysql
(4)启动mysql进程
mysqld_safe --defaults-file=/data/mysql/backup-f --user=root --datadir=/data/mysql &
查看进程:
四、登录数据库,验证
(1)登录
mysql -uroot#登录不用密码
(2)查看数据,验证
至此,数据恢复完成;
(3)
如果需要修改root密码,可以执行如下操作;
mysql> set password=password(‘123456‘);
mysql> grant all privileges on *.* to [emailprotected]‘%‘ identified by ‘123456‘; #解决客户端root用户远程连接服务器的问题
mysql> grant all privileges on *.* to ‘root‘@‘127.0.0.1‘ identified by ‘123456‘ with grant option; #解决root权限访问所有库的问题
mysql> flush privileges;
五、可能遇到的问题
解决方法:
执行删除命令:rm -rf /data/mysql/ib*
删除:ibdata1、ib_logfile0、ib_logfile1文件
再次尝试启动mysql
参考文档:/liudihedy/article/details/73222001