【MySQL高可用集群 二】MySQL主从搭建(GTID同步方式)
【MySQL高可用集群 二】MySQL主从搭建(GTID方式)
【MySQL高可用集群 七】ProxySQL&MySQL 主从环境搭建
【MySQL高可用集群 八】ProxySQL&MGR 环境搭建
一、环境准备
基于GTID方式的步骤和传统步骤相同,只有部分配置不同,下面针对不同的地方作出配置示例。主机信息:
Ubuntu 22.04 LTS (两台虚拟机),每台上面安装MySQL 8.0.33
主机信息:
10.53.207.21 (MySQL master)
10.53.207.22 (MySQL slave)
域名映射 /etc/hosts 配置:
#IP 域名|主机名 10.53.207.22 10.53.207.22 10.53.207.21 10.53.207.21
二、主节点(10.53.207.21)配置
server-id=1 log_bin=mysql-bin #binlog日志名称 gtid_mode=ON #GTID 是一个全局唯一的事务标识符,用于标识数据库集群中的事务。启用 GTID 后,每个事务都会被分配一个唯一的 GTID。 enforce_gtid_consistency=1 #当启用 GTID 后,该选项用于强制要求从库只能复制具有与主库一致的 GTID 链的事务,以确保数据一致性。
# 主库不需要写binlog日志的数据库
binlog_ignore_db = mysql
binlog_ignore_db = information_schema
binlog_ignore_db = performance_schema
binlog_ignore_db = sys
#binlog_format=ROW #binlog记录形式,默认ROW,另外还有MIXED
MySQL更新配置后一定要重启服务:service mysql restart
创建同步账户:
use mysql;
create user 'repl'@'10.53.207.%' identified by 'P@repl'; grant replication slave on *.* to 'repl'@'10.53.207.%'; flush privileges;
三、从节点(10.53.207.22)配置
server-id=2
read_only=1 log_bin=mysql-bin gtid_mode=ON enforce_gtid_consistency=1
#relay_log=/data/mysql/relay-log
# 从库不进行同步的数据库
replicate_ignore_db = mysql
replicate_ignore_db = information_schema
replicate_ignore_db = performance_schema
replicate_ignore_db = sys
MySQL更新配置后一定要重启服务:service mysql restart
注意在传统模式下,如果从库下端不再接入从库那么 可以关闭binlog(skip-log-bin),只有在下接从库时需要开启binlog并设置 log_slave_updates=on。但是在gtid模式下,不管是否下接从库都必须开启binlog,因为gtid模式需要通过对比binlog中全局唯一事物ID来确定同步的数据。
配置主从同步信息:
change master to master_host='10.53.207.21', master_port=3306, master_user='repl', master_password='P@repl', master_auto_position=1, get_master_public_key=1;
master_auto_position=1,从库自动确定需要同步的位置,不需要在配置传统的 master_log_file 和 master_log_pos 两个属性了。
开启主从同步:start slave;
关闭主从同步:stop slave;
查看主从同步状态:MySQL8以前旧版本 show slave status; 新版本 show replica status;
原创文章,引用请注明出处:https://www.cnblogs.com/hewei-blogs/articles/17629396.html
本文来自博客园,作者:蓝迷梦,转载请注明原文链接:https://www.cnblogs.com/hewei-blogs/articles/17629396.html

浙公网安备 33010602011771号