首页 > 数据库技术 > 详细

mysql5.7基于gtid进行搭建主从复制过程

时间:2019-11-18 21:45:32      阅读:91      评论:0      收藏:0      [点我收藏+]

 

 

 

gtid_mode = on
enforce-gtid-consistency = on
skip_name_resolve # 去掉域名解析
二进制日志必须开启,且格式为ROW
server-id必须配置成不同的
####################################################################################


# 假设M机器上的mysql实例A ---->> S机器上的mysql实例B,其中M机器的ip为ip1,机器S上的ip为ip2 # 如果在M机器上对mysql实例A进行备份数据,那么就在A机器上创建一个临时的用户来导出数据: grant all privileges on *.* to tmp@ip2 identified by dtmp with grant option; # 备份原主库或原主库的任意一个从库数据,一是普通数据,二是权限数据 备份普通数据: mysql -hXXX -P3306 -utmp -ptmp -e show databases; | grep -Ev Database|information_schema|mysql|performance_schema|sys | xargs mysqldump -utmp -ptmp -hXXX -P3306 --single-transaction --master-data=2 --databases > data_backup.sql 备份权限数据: pt-show-grants -utmp -ptmp -hXXX -P3306 >grant_backup.sql 然后先记录下data_backup.sql文件中类似SET @@GLOBAL.GTID_PURGED=6aadd490-f0b7-11e9-bd17-246e96923e78:1,772c2f87-f0bf-11e9-87a6-246e9698b380:1-44400这样的数据,然后用“--”将其注释掉; # 备份B上的data目录 关闭S机器上的mysql实例 cp -r data data_of_install 修改配置文件 启动B上的mysql实例 # 在B实例上创建一个导入数据的用户 grant all privileges on *.* to tmp@127.0.0.1 identified by dtmp with grant option; # # 在S机器上的备份文件所在目录下(方便导入数据)登录B实例 mysql -h127.0.0.1 -P3306 -utmp -ptmp # 在S机器上登录B实例后就可以导入数据了 source ./data_backup.sql source ./grant_backup.sql # 然后在B实例上依次执行如下语句即可 stop slave; reset slave; reset master; SET @@GLOBAL.GTID_PURGED=6aadd490-f0b7-11e9-bd17-246e96923e78:1,772c2f87-f0bf-11e9-87a6-246e9698b380:1-44400; # 该内容需要根据自己的备份文件中获得 ############# CHANGE MASTER TO MASTER_HOST=主库ip, MASTER_PORT=主库端口, MASTER_USER=主库上的复制用户, MASTER_PASSWORD=主库上的复制用户的密码, MASTER_AUTO_POSITION=1; # 设置从库只能读,不能写 set global read_only=1;

 

 

 

 

技术分享图片

 

 

 

mysql5.7基于gtid进行搭建主从复制过程

原文:https://www.cnblogs.com/igoodful/p/11884877.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!