使用xtrabackup工具套件不停机搭建mysql主从
程序员文章站
2022-07-05 23:16:13
使用xtrabackup工具套件不停机搭建mysql主从
os: centos7.3
arch: x64
mysql:5.7.17
文章假设读者已经完成xtraback...
使用xtrabackup工具套件不停机搭建mysql主从
os: centos7.3 arch: x64 mysql:5.7.17
文章假设读者已经完成xtrabackup和mysql主从的部署安装
在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
查看备份中的gtid信息
# 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。
end
附录
xtrabackup install doc
mysql install doc
上一篇: Sass学习笔记之Sass快速入门教程
下一篇: 新手安装hadoop详细教程