os: centos7.3 arch: x64 mysql:5.7.17
文章假设读者已经完成xtrabackup和mysql主从的部署安装
#innobackupex --defaults-file=/etc/my.cnf --user=root --password=* /data/**/backup/defaults-file 配置文件的地址 user 用户名 password 密码 /data/**/backup/ 备份存放目录
先应用日志 #innobackupex --defaults-file=/etc/my.cnf --apply-log --user=root --no-lock /data/tsddb/2017-08-15_11-07-39/ 再恢复数据 #innobackupex --defaults-file=/etc/my.cnf --copy-back --user=root --no-lock /data/tsddb/2017-08-15_11-07-39/defaults-file 配置文件的地址 user 用户名
很重要,不然数据库报错,启动不起来
#chown -R mysql.mysql /data/mysql/data/mysql 数据存放目录
# systemctl start mysqld.service
# cat 2017-08-15_11-07-39/xtrabackup_binlog_info mysql-bin.000185 222755272 0767ae2d-51ec-11e7-bc79-1402ec821274:1-56929, 873ab346-1478-11e7-ae5c-1402ec824308:1-175269857, cb977487-1442-11e7-92da-1402ec822b04:1:174394982-174429754
主服务器创建同步用户
grant replication slave on *.* to rsync@"%" identified by '****';
在从服务器上执行
#mysql -uroot -p >reset master; >set global gtid_purged='0767ae2d-51ec-11e7-bc79-1402ec821274:1-56929,873ab346-1478-11e7-ae5c-1402ec824308:1-175269857,cb977487-1442-11e7-92da-1402ec822b04:1:174394982-174429754'; >CHANGE MASTER TO MASTER_HOST='10.200.20.31', MASTER_USER='rsync', MASTER_PASSWORD='*', MASTER_PORT=3306, MASTER_AUTO_POSITION=1; >start slave; >show slave status\Greset master 如果不情况binlog日志,重新生成gtid,直接执行set global gtid_purged会报错。 set global gtid_purged 这个选项很重要,很重要,很重要,重要说三遍,而且有个地方要特别注意,有时候在linux shell里面查看xtrabackup_binlog_info文件后看到的gtid的信息会被换行,切记要像上文代码一下三个都写上,中间用逗号隔开,不然一直提示主键冲突出错,楼主刚开始没注意,折腾了好一会。
CHANGE MASTER TO MASTER_HOST='10.200.20.31', MASTER_USER='rsync', MASTER_PASSWORD='*', MASTER_PORT=3306, MASTER_AUTO_POSITION=1; # 依次是主机ip,同步用户名,密码,端口,自动找点同步选项设置为1。
xtrabackup install doc
mysql install doc
如对本文有疑问, 点击进行留言回复!!
一步步教你用Prometheus搭建实时监控系统系列(一)——上帝之火,普罗米修斯的崛起
网友评论