MySQL Gtid主从配置

本文详细介绍了如何使用GTID配置MySQL主从复制,包括一主一从、一主二从和二主一从的配置步骤。内容涵盖服务器准备、主从账号授权、配置文件修改、主从复制测试等关键环节,特别强调了多主库配置时的注意事项,如server-id的设置和change master命令的执行。
摘要由CSDN通过智能技术生成

Gtid配置主从(一主一从)

准备工作

  • 搭建两台MySQL服务器,一台作为主服务器,一台作为从服务器
  • 主数据库:IP:192.168.218.131 无数据,二进制安装mysql
  • 从数据库:IP:192.168.218.133 无数据,二进制安装mysql

## mysql Gtid主从配置

  • 在主数据库里创建一个同步账号授权给从数据库使用
//配置前先关闭防火墙,主从数据库都需要关闭
[root@localhost ~]# systemctl disable --now firewalld
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# setenforce 0 
[root@localhost ~]# vi /etc/selinux/config 
SELINUX=disabled

//创建同步账号
mysql> grant replication slave on *.* to 'repl'@'192.168.218.133' identified by 'repl123';

Query OK, 0 rows affected, 1 warning (0.00 sec)

//刷新权限
mysql> flush privileges;    
Query OK, 0 rows affected (0.00 sec)

//使用从数据库登录测试一下
[root@localhost ~]# mysql -urepl -p'repl123' -h192.168.218.131
mysql>   //登录成功

  • 配置主数据库
//在/etc/my.cnf下添加内容
[root@localhost ~]# vi /etc/my.cnf 

[mysqld]
basedir = /usr/local/mysql
datadir = /opt/data
socket = /tmp/mysql.sock
port = 3306
pid-file = /opt/data/mysql.pid
skip-name-resolve

# replication config 
server-id = 10
gtid-mode = on
enforce-gtid-consistency = on 
log-bin = mysql_bin
binlog-format = row
log-slave-updates = 1
skip-slave-start = 1

//重启服务
[root@localhost ~]# service mysqld restart
Shutting down MySQL.. SUCCESS! 
Starting MySQL. SUCCESS! 

//查看状态
mysql> show variables like '%gtid%';
+----------------------------------+-----------+
| Variable_name                    | Value     |
+----------------------------------+-----------+
| binlog_gtid_simple_recovery      | ON        |
| enforce_gtid_consistency         | ON        |
| gtid_executed_compression_period | 1000      |
| gtid_mode                        | ON        |
| gtid_next                        | AUTOMATIC |
| gtid_owned                       |           |
| gtid_purged                      |           |
| session_track_gtids              | OFF       |
+----------------------------------+-----------+
8 rows in set (0.01 sec)

  • 配置从数据库
//在/etc/my.cnf下添加内容
[root@localhost ~]# vi /etc/my.cnf 

[mysqld]
basedir = /usr/local/mysql
datadir = /opt/data
socket = /tmp/mysql.sock
port = 3306
pid-file = /opt/data/mysql.pid
skip-name-resolve 

#replication config 
server-id = 20
log-bin = mysql_bin
binlog-format = row
skip-slave-start = 1
gtid-mode = on 
log-slave-updates = 1
enforce-gtid-consistency = on

//重启服务
[root@localhost ~]# service mysqld restart
Shutting down MySQL.. SUCCESS! 
Starting MySQL. SUCCESS! 

//查看状态
mysql> show variables like '%gtid%';
+----------------------------------+-----------+
| Variable_name                    | Value     |
+----------------------------------+-----------+
| binlog_gtid_simple_recovery      | ON        |
| enforce_gtid_consistency         | ON        |
| gtid_executed_compression_period | 1000      |
| gtid_mode                        | ON        |
| gtid_next                        | AUTOMATIC |
| gtid_owned                       |           |
| gtid_purged                      |           |
| session_track_gtids              | OFF       |
+----------------------------------+-----------+
8 rows in set (0.00 sec)

//配置主从复制
mysql> change master to 
    -> master_host='1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值