MySQL复制GTID

GTID复制介绍

GTID:是对于一个已经提交事务的唯一编号,并且是一个全局(主从复制)唯一编号。
定义如下
GTID=source_id :transaction_id
什么是sever_uuid,和server-id区别
核心特性:全局唯一,具备幂等性

GTID核心参数

重要参数

gtid-mode=on #启用gitd类型,否则就是普通的复制架构
enforce-gtid-consistency=true #强制GTID的一致性
log-slave-updates=1 #slave更新是否记入日志

环境
10.0.0.51 db01
10.0.0.52 db02
10.0.0.53 db03
环境准备

主库db01
vim  /etc/my.cnf
[mysqld]
basedir=/application/mysql/
datadir=/data/mysql/data
socket=/tmp/mysql.sock
server_id=51
port=3306
secure-file-priv=/tmp
autocommit=0
log_bin=/data/binlog/mysql-bin
binlog_format=row
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
[mysql]
prompt=db01  [\\d]>

slave(db02)
vim /etc/my.cnf
[mysqld]
basedir=/application/mysql
datadir=/data/mysql/data
socket=/tmp/mysql.sock
server_id=52
port=3306
secure-file-priv=/tmp
autocommit=0
log_bin=/data/binlog/mysql-bin
binlog_format=row
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
[mysql]
prompt=db02  [\\d]>

slave(db03)
[mysqld]
basedir=/application/mysql
datadir=/data/mysql/data
socket=/tmp/mysql.sock
server_id=53
port=3306
secure-file-priv=/tmp
autocommit=0
log_bin=/data/binlog/mysql-bin
binlog_format=row
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
[mysql]
prompt=db03  [\\d]>

初始化数据库

三个都做
mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data
拷贝启动文件
cp support-files/mysql.server /etc/init.d/mysqld
启动数据库
/etc/init.d/mysqld  start

构建主从

51 创建用户
db01 [(none)]>grant replication slave on *.* to repl@'10.0.0.%' identified by '123';

从库连接(52,53)
change master to
master_host='10.0.0.51',
master_user='repl',
master_password='123',
master_auto_position=1;
启动
start slave;
查看状态
show slave status\G

说明:
1.在主从复制环境中,主库发生过的事务,在全局都是由唯一GTID记录的,更方便failover
2.change master to 的时候不在需要binlog文件名和position号,master_auto_position=1;
3.在复制过程中,从库不在依赖master.info文件,而是直接读取最后一个relaylog的 GTID号
4.mysqldump备份时,默认会将备份中包含的事务操作,以一下方式
SET @@GLOABL.GTID_PURGED=‘xxxxxxx:1’;
告诉从库,我的备份中已经有以上事务,你就不用运行了,直接从下一个GTID开始请求binlog就可以

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容