mysql实战——异步复制(gtid复制)

一、搭建前准备

主库     192.168.1.76

从库     192.168.1.78

二、搭建

1、编辑配置文件

主库

server-id=76
gtid_mode=on
enforce_gtid_consistency=on

log_bin=master-binlog
log-slave-updates=1
binlog_format=row

 从库

gtid_mode=on
enforce_gtid_consistency=on
server_id=78

log-bin=slave-binlog
log-slave-updates=1
binlog_format=row

2、主库创建复制用户

create user 'repl'@'%' identified by 'repl123';

grant replication slave,replication client on *.* to 'repl'@'%';

3、搭建主从复制

可以发现从库运行语句报错。

报错原因:GTID_MODE=off,应该为on,配置文件没有重新启动发挥作用。

解决方法:主从库依次运行

set global enforce_gtid_consistency=WARN;

set global enforce_gtid_consistency=on;
set global gtid_mode=OFF_PERMISSIVE;
set global gtid_mode=ON_PERMISSIVE;

set global gtid_mode=ON;

 4、开启主从复制

从库运行

change master to master_host='192.168.1.76',master_user='repl',master_password='repl123',master_auto_position=1;

发现io进程没有开启。

之后我重启了下机器,让/etc/my.cnf文件配置成功。

重启后发现io进程:connecting,还没开启成功。

最后发现是因为现在的mysql8.0的密码加密都是用的 caching_sha2_password这种。

stop slave;

 change master to master_host='192.168.1.76',master_user='repl',master_password='repl123',master_auto_position=1,get_master_public_key=1;

主从复制搭建成功。

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL的主从复制GTID(Global Transaction Identifier)是一种用于标识和跟踪事务的机制。GTID是一个全局唯一的标识符,用于确保主从复制中每个事务的唯一性和一致性。它在MySQL 5.6版本中引入,并在之后的版本中得到改进和增强。 使用GTID进行主从复制可以简化配置和管理,并提供更可靠的数据同步。下面是使用GTID进行主从复制的基本步骤: 1. 在主服务器上启用GTID功能: 在主服务器的配置文件(my.cnf)中添加以下参数: ``` [mysqld] server-id=1 log-bin enforce-gtid-consistency=true ``` 启用GTID功能并设置服务器ID和二进制日志。 2. 在从服务器上启用GTID功能: 在从服务器的配置文件中添加以下参数: ``` [mysqld] server-id=2 enforce-gtid-consistency=true ``` 设置服务器ID和启用GTID功能。 3. 配置主从关系: 在主服务器上创建一个用于复制的用户,并授予适当的权限。 4. 在从服务器上配置主服务器信息: 在从服务器上执行以下命令: ``` CHANGE MASTER TO MASTER_HOST='主服务器IP', MASTER_USER='复制用户', MASTER_PASSWORD='复制用户密码', MASTER_AUTO_POSITION=1; ``` 这将配置从服务器以使用GTID复制并将其连接到主服务器。 5. 启动主从复制: 在从服务器上执行以下命令开始复制: ``` START SLAVE; ``` 从服务器将开始从主服务器接收和应用事务。 通过以上步骤,你可以使用GTID实现MySQL的主从复制。这种方式可以提供更高的数据一致性和可靠性,并简化了配置和管理过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值