九层之台始于垒土

千里之堤溃于蚁穴

使用xtrabackup对不同版本的mysql进行备份还原

一、安装mysql对应版本的xtrabackup,不同服务器安装不同的版本

mysql 5.1 – xtrabackup2.0
mysql5.6 --xtrabackup 2.2
mysql5.7 --xtrabackup2.4

二、本地服务器和远程服务器建立免密连接

1.ssh-keygen -t rsa,一直回车  生成密钥

2.ssh-copy-id -i .ssh/id_rsa.pub root@192.168.99.242 #复制密钥到远程主机

3.ssh 192.168.99.242     测试登录

三、手动备份

1、 全量备份:

Innobackupex --defaults-file=/etc/my.cnf --user=root --host=127.0.0.1 --password=root--no-timestamp    --stream=tar ./ | ssh root@192.168.99.242 \ "cat - >  /usr/local/xtrabackup/full/full.tar"

2远程服务器解压
tar -xvif  /usr/local/xtrabackup/full/full.tar

3、预还原

innobackupex --apply-log  /usr/local/xtrabackup/full/

4、还原

 innobackupex --defaults-file=/etc/my.cnf --copy-back /usr/local/xtrabackup/full

5、设置权限

chown -R mysql.mysql /var/lib/mysql

6、错误解决:mysql版本不一致导致不能启动

先跳过数据库验证:skip-grant-tables;

启动msyql,然后更新:mysql_upgrade

修改密码:update mysql.user set authentication_string=password('root_password') where user='root';

flush privileges;

然后去除验证

 

 

 

 

 

posted on 2019-09-27 10:23  nzxing  阅读(2367)  评论(0编辑  收藏  举报

导航