主从配置_详解生产环境mysql数据库如何配置并开启GTID主从复制模式

本文介绍了在生产环境中如何配置MySQL数据库以启用GTID主从复制模式,详细阐述了从基础配置到从传统主从复制转换的步骤,包括授权、验证和参数配置等关键操作。
摘要由CSDN通过智能技术生成

概述

今天主要介绍一下生产环境mysql数据库如何去开启GTID这个特性,下面一起来看看吧~


1、GTID基础配置

//在主库上的配置文件中添加:#GTID:server_id=1                #服务器idgtid_mode=on                 #开启gtid模式enforce_gtid_consistency=on  #强制gtid一致性,开启后对于特定create table不被支持log_bin=master-binlog  #开启日志binlog_format=row//以上是GTID的基础配置,必须存在,其他配置可以根据需要自行设置 //在从库上的配置:#GTID:server_id=5                #从库id,比主库的大gtid_mode=on                 #开启gtid模式enforce_gtid_consistency=on  #强制gtid一致性,开启后对于特定create table不被支持log_bin=slave-binlog  #开启日志binlog_format=row

2、生产环境第一次启用GTID的主从

这个没啥好讲的,所以就把关键的三个步骤写一下了。。

2.1、主库授权

  GRANT REPLICATION SLAVE ON *.* TO repl@'%' IDENTIFIED BY "repl@1234";

2.2、从库开启GTID

CHANGE MASTER TO MASTER_HOST='xx.xx',MASTER_USER='repl',MASTER_PASSWORD='repl@1234',MASTER_AUTO_POSITION=1;start slave;

2.3、验证GTID

 show slave status G    #正常可以看到复制工作已经开始

3、生产环境从主从复制模式转为GTID复制

目的:将传统的主从复制改到GTID主从复制模式。

3.1、停应用、备份数据库及配置文件

这里用xtrabackup做一个备份,80G耗时4分钟。

cp my.cnf my.cnf_bak200604

151b84a46a7544e8fae1c3a5b43b41da.png

3.2、配置参数文件

1)主库配置

#主库二进制配置server-id = 1log-bin = /tmsdata/log/mysql-bin.loglog-bin-index =/tmsdata/log/binlog.indexlog_bin_trust_function_creators=1expire_logs_days=7#GTID配置gtid_mode=on                 #开启gtid模式enforce_gtid_consistency=on  #强制gtid一致性,开启后对于特定create table不被支持binlog_format=rowskip_slave_start=1 #slave库打开后会稍后同步数据,等待change master to执行后才同步数据,建议开启,避免slave开启后数据不同步#事务隔离级别transaction-isolation=READ-COMMITTED

2)从库配置

#从数据库二进制配置server-id = 2log-bin = /tmsdata/log/mysql-bin.loglog-bin-index =/tmsdata/log/binlog.indexlog_bin_trust_function_creators=1expire_logs_days=7#GTID配置gtid_mode=on                 #开启gtid模式enforce_gtid_consistency=on  #强制gtid一致性,开启后对于特定create table不被支持binlog_format=rowskip_slave_start=1 #slave库打开后会稍后同步数据,等待change master to执行后才同步数据,建议开启,避免slave开启后数据不同步#事务隔离级别transaction-isolation=READ-COMMITTED

3.3、主从库器设置global.read_only参数,等待主从服务器同步完毕

SET @@global.read_only = ON; show slave status G SET @@global.read_only = ON; show slave status G
791d6b1b7492c83472e139ceea7e1047.png

3.4、依次重启主从数据库

 systemctl restart mysqld

3.5、从库更新主从配置

stop slave;CHANGE MASTER TO MASTER_HOST='xx.xx.94',MASTER_USER='repl',MASTER_PASSWORD='repl@1234',MASTER_AUTO_POSITION=1;START SLAVE;

3.6、检查GTID主从复制

SET @@global.read_only = OFF; show slave status G 
c995381e7bee3849b89e232b1322d424.png
160ea599b6b0f855bffb8c3140955927.png

3.7、再次备份

因为之前的备份是没有GTID的,现在数据开启GTID后,原备份就不适用了。

2cb923d6a9eac6c2fd90edbce01d492d.png

觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值