记录日常工作关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题。

环境centos 7

GTID 全民global transaction identifiers(全局事务标志);
GTID (Global Transaction ID) 是对于一个已提交事务的编号,并且是一个全局唯一的编号。 GTID 实际上 是由 UUID+TID 组成的。其中 UUID 是一个 MySQL 实例的唯一标识。TID 代表了该实例上已经提交的事务数量,并且随着事务提交单调递增。
主192.168.153.100
从192.168.153.101 (master)
  1. 首先在两台服务器关闭防火墙,安装 mysql,我这里安装的是阿里最新的mariadb安装最新的mariadb要获取阿里的yum源
systemctl stop firewalld.service
//关闭防火墙
  • 1
  • 2

vim /etc/yum.repo/Mariadb.repo

  1. 添加mariadb在阿里的链接
[mariadb]
name = MariaDB
baseurl = https://mirrors.aliyun.com/mariadb/yum/10.5/centos7-amd64/
gpgkey=https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  1. 注意两台服务器都需要创建,这样才能保证两台服务器版本一致,进行安装
yum -y install mariadb mariadb-server
  • 1
  1. 安装完毕后更改mysql 的配置文件,两个都需要更改
vim /etc/my.cnf.d/serever.cnf
  • 1

主Mariadb

在[mysqld]下插入
server_id = 1
log_bin = mysql-bin
  • 1
  • 2

从机Mariadb

在[mysqld]下插入
server_id = 2
log_bin = mysql-bin
  • 1
  • 2
  1. 重启数据库,并进入数据库,对其进行账号授权。
systemctl start mariadb mariadb-server
mysql
grant replication slave on *.* to 'tom'@'192.168.153.101' identified by '123';
// 这里tom 是授权账号的用户名、192.168.153.101是从的ip、后面的123是用户名的密码账号密码可以自己随意修改
  • 1
  • 2
  • 3
  • 4
  1. 进入从服务器,重启mariadb,进入mysql,停止同步修改信息
systemctl start mariadb mariadb-server
//重启mysql
stop slave;
//关闭同步
chang master to master_host='192.168.153.100',master_user='tom',master_password='123',master_port=3306,master_use_gtid = current_pos;
//修改master信息 host为主ip,user为在主创建的用户名,password为在主创建的密码,port为mysql端口号,use_gtid为传统模式更改为gtid复制模式
start slave;
// 开启同步
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

7.查看连接状态

show slave status \G;



Slave_IO_Running: Yes
Slave_SQL_Running: Yes
//变成双yes表示同步成功
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7


如果没有变成双yes 重启数据库然后重新测试,以上就是GTID实现主从同步的所有过程。



转载请标明出处【Centos7安装Mariadb10.3实现GTID主从同步复制】。

《www.micoder.cc》 虚拟化云计算,系统运维,安全技术服务.

网站已经关闭评论