MySQL基于GTID复制

GTID (Global Transaction ID) 是对于一个已提交事务的编号,并且是一个全局唯一的编号。 GTID 实际上 是由 UUID+TID 组成的。其中 UUID 是一个 MySQL 实例的唯一标识。

在server1中:
修改mysql配置文件
[root@server1 ~]# vim /etc/my.cnf

server_id=1				#服务器ID
log_bin=master-bin		#开启二进制日志
binlog_do_db=test		#需要同步的数据库名
binlog_ignore_db=mysql	#禁止同步的数据库名

gtid_mode=ON
enforce-gtid-consistency=true

重启mysql服务
[root@server1 ~]# systemctl restart mysqld

[root@server1 ~]# mysql -uroot -p
show master status;

+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000002 |      154 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

在server2中:

[root@server2 ~]# vim /etc/my.cnf

server_id=2				#服务器ID
log_bin=master-bin		#开启二进制日志
binlog_do_db=test		#需要同步的数据库名
binlog_ignore_db=mysql	#禁止同步的数据库名
relay-log=relay-log.log
gtid_mode=ON
enforce-gtid-consistency=true

[root@server2 ~]# systemctl restart mysqld

[root@server2 ~]# mysql -uroot -p
停止同步
mysql> stop slave;

Query OK, 0 rows affected (0.03 sec)

##由于pos号一直在变更 故设定MASTER_AUTO_POSITION=1
授权
mysql> change master to master_host=‘此处写master的ip地址’,master_user=‘hostname’,master_password=‘HYM*hyf5532’,MASTER_AUTO_POSITION=1;

Query OK, 0 rows affected, 2 warnings (0.48 sec)

开启同步
mysql> start slave;

Query OK, 0 rows affected (0.02 sec)

查看状态
mysql> show slave status\G

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值