mysql5.6基于gtid模式_MySQL5.6基于GTID的主从复制配置

全局事务标示符(Global Transactions Identifier)是MySQL 5.6复制的一个新特性。

GTID实际上是由UUID+TID组成的。其中UUID是一个MySQL实例的唯一标识。TID代表了该实例上已经提交的事务数量,并且随着事务提交单调递增。下面是一个GTID的具体形式。

1、在MySQL5.6以前对于主从复制出现问题有时候需要你分析BINLOG找到POS点,然后在CHANG MASTER TO.对于新手来说很容易犯错,造成主从复制错误.在新版本中,不必在需要寻找BINLOG和POS点,你只需要知道MASTER的IP、密码、端口就可以,因为MySQL会从内部GTID机制自动找到同步点.

2、多线程复制,在MySQL5.6之前,复制是单线程队列式的,只能一个一个运行.在新版中支持基于库的多线程复制,但是库里的表不能多线程.

主MySQL配置文件修改:

server-id=185 #和从MySQL不同log-bin=mysql-bin

expire-logs-days=14#二进制日志周期(按需配置)

binlog-format=row #使用row格式

log-slave-updates=truegtid-mode=on #开启GTID模式

slave_parallel_workers=4#开启基于库的多线程复制默认0不开启

enforce-gtid-consistency=true#强制GTID的一致性

master-info-repository=TABLE #主服信息记录库=表/文件

relay-log-info-repository=TABLE #中继日志信息记录库

relay-log=mysqld-relay-bin  #中继日记名称sync-master-info=1#同步主库信息

innodb_file_per_table=1 #使用独立表空间

主MySQL创建复制账号:

grant replication slave,replication client on *.* to 'repl'@'10.205.22.186' identified by 'password';

flush privileges;

从MySQL配置文件修改:

server-id=186 #和主MySQL不同log-bin=mysql-bin

expire-logs-days=14#二进制日志周期(按需配置)

binlog-format=row #使用row格式

log-slave-updates=truegtid-mode=on #开启GTID模式

slave_parallel_workers=4#开启基于库的多线程复制默认0不开启

enforce-gtid-consistency=true#强制GTID的一致性

master-info-repository=TABLE #主服信息记录库=表/文件

relay-log-info-repository=TABLE #中继日志信息记录库

relay-log=mysqld-relay-bin  #中继日志名称sync-master-info=1#同步主库信息

innodb_file_per_table=1 #使用独立表空间

从MySQL执行:

change master to master_host='10.205.22.185',master_port=3306,master_user='repl',master_password='password',MASTER_AUTO_POSITION=1;

start slave;

在主MySQL写入数据,查从MySQL是否同步成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值