mysql主从复制之GTID

在mysql5.6之前我一直都是使用的基于二进制日志的主从复制,也没出过什么问题,
当mysql更新到5.7之后GTID(全局事务标示符)就比较完善了,所以也就研究了一下。
1.为什么要主从复制?
没有为什么,开心就好,等你主机服务器突然宕机sql无法启动的时候你就明白了,等等
2.什么是GTID?
全局事务ID,保证为每一个在主数据库上提交的事务在复制集群中可以生成一个唯一的ID,GTID包括两个值,一个是serveruuid代表每个库的id值,并且唯一性,另外一个是transaction_id事务id,代表已执行事务的id,且主库与从库1:1相等,
3.GTID与基于二进制日志复制的区别?
首先两者都是基于bin_log日志复制的,二进制复制是从服务器告诉主服务器从哪个二进制日志偏移量进行增量同步,如果指定错误就会遗漏或者重复,GTID从库把已执行事务的GTID值发送给主库,主库对比日志之后把未执行的GTID值传给从库,从而更新从库,同一个事务只在指定的从库执行一次,不会发生重复执行。
4.GTID主从复制的配置要求?
mysql版本一定要>=5.7,5.6的也行只要不怕突然出bug就行,而且mysql更新到5.7之后最重要的是,可以一从多主了,想想是不是很刺激嘿嘿。
开启GTID后有如下限制:
不允许在同一个事务内对事务表和非事务进行DML操作,例如在同一个事务内先update innodb表,然后update myisam表 就会产生两个GTID;不允许create table… select语句等等,其他的百度。一般正常操作不会影响。

创建复制账号并授权更新

create user 'server2' @'192.168.123.%' identified by '123456';
grant replication slave on *.* to server2@'192.168.123.%';
FLUSH PRIVILEGES;  

server2 是创建的用户名,192.168.123.%是你的ip网段,123456是密码。

主库mysql配置

server-id = 1 主库server-id 和之前的serveruuid是两码事,别搞混了
gtid_mode = on 启动GITD模式
log-slave-updates = on 更新事务修改日志,5.7之后可以省略
enforce-gtid-consistency = on 开启强制GTID一致性保证事务安全
master_info_repository =TABLE
relay_log_info_repository = TABLE 可选项(先看看是否已配置)

从库mysql配置

server-id = 2 主库server-id 和之前的serveruuid是两码事,别搞混了
gtid_mode = on 启动GITD模式
relay_log = /usr/local/mysql/sql_log/mysql-relay-bin 路径随意改变
log-slave-updates = on 更新事务修改日志,5.7之后可以省略
enforce-gtid-consistency = on 开启强制GTID一致性保证事务安全
read_only=on
master_info_repository =TABLE
relay_log_info_repository = TABLE可选项
重启mysql服务
service mysql restart

初始化数据库'

主库操作
mysqldump --single-transaction --master-data=2 --triggers --routines --all-databases -uroot -p > /vagrant/all3.sql;
主库操作,备份 /vagrant/all3.sql为备份的sql文件位置


image.png

image.png

把sql文件上传到从库服务器上,可以选择ftp scp 等等,我这里是windows下的linux虚拟机,文件是linux和windows同步的我只要从主服务器复制到从服务器就行了


image.png

image.png
image.png

从库初始化主库的数据

mysql -uroot -p < /vagrant/all3.sql
image.png

从库开启主从复制

change master to master_host='192.168.123.101',master_user='repl',master_password='123456',master_auto_position=1;
start slave;

192.168.123.101主库ip
show slave status \G; 查看主从复制状态


image.png

更新一下主库看看从库是否也同步吧

复制错误

我这里为0代表没有错误


image.png

此处为主从复制错误状态,一般错误排查 看一下my.conf 里的server-id 是不是一样的,还有uuid是否冲突,
如果server-id 一样,改一下就行了

image.png

查看uuid如果主从的uuid也一样的话就会出错,一个集群里不会存在相同的uuid的,
解决办法 删除auto.cnf文件
停止mysql


image.png

image.png

删除auto.conf


image.png

启动mysql
auto.conf将会自动生成

如果没有错误,就可以更新一下主库看看,从库是否也同步吧

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,948评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,371评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,490评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,521评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,627评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,842评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,997评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,741评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,203评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,534评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,673评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,339评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,955评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,770评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,000评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,394评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,562评论 2 349

推荐阅读更多精彩内容