主库配置:
(一)、修改配置文件:在my.cnf配置文件中开启如下选项。
[mysqld]
#GTID:
gtid_mode=on
enforce_gtid_consistency=on
server_id=2003306
 
#binlog
log-bin=mysqlbin
log-slave-updates=1
binlog_format=row      #强烈建议,其他格式可能造成数据不一致
 
#relay log
skip_slave_start=1
 
(二)、初始化数据库:
cd /usr/local/mysql/
./scripts/mysql_install_db --user=mysql --defaults-file=/etc/my.cnf
 
(三)、启动mysql进程:
cp support-files/mysql.server /etc/init.d/mysql
/etc/init.d/mysql start
 
(四)、校验mysql是否启动:
ps axu|grep mysqld
netstat -nalp|grep "3306"
lsof -n -i:3306
 
(五)、进入master数据库查询相关信息:
1、查看master状态:
show master status
 
2、查看主库GTID信息:
show global variables like '%gtid%';
 
 
3、查看server_id和server_uuid
show global variables like 'server%';
 
 
4、插入新数据,生成GTID号:
create database wubx;
use wubx
create table wu(id int,name varchar(30));
insert into wu(id,name) values(1,'u1');
select * from wu;
 
5、确认master状态是否获取GTID信息:
进行了3次事务。
 
 
6、再次添加数据,查看GTID变化:
use wubx;
insert into wu(id,name) values(2,'u2');
select * from wu;
 
7、在查看master信息
show master status;
变成了1-4
 
8、查看用户、主机名和密码:
select user,host,password from mysql.user;
 
9、清理没用的用户:
delete from mysql.user where user!='root' or host!='localhost';
 
注意:由于mysql.user是myisam引擎的表。所以gtid在复制的时候会出现错误,无法同步。
 
 
10、主库创建复制账号:
grant replication slave on *.* to 'abobo'@'%' identified by '123';
flush privileges;
 
 
11、查看用户权限:
[master]>show grants for abobo;

 
12、查看master的GTID信息:
show master status;
 
-------------------------------------------------------------------------------
从库配置
(一)、修改配置文件:在my.cnf配置文件中开启如下选项。
[mysqld]
#GTID:
gtid_mode = on
enforce_gtid_consistency = on
server_id=2013306
 
#binlog
log-bin=mysqlbin
log-slave-updates=1
binlog_format=row      #强烈建议,其他格式可能造成数据不一致
 
#relay log
skip_slave_start=1
 
(二)、初始化数据库:
cd /usr/local/mysql/
./scripts/mysql_install_db --user=mysql --defaults-file=/etc/my.cnf
 
(三)、启动mysql进程:
cp support-files/mysql.server /etc/init.d/mysql
/etc/init.d/mysql start
 
(四)、校验mysql是否启动:
ps axu|grep mysqld
netstat -nalp|grep "3306"
lsof -n -i:3306
 
 
 
(五)、进入slave挂载master:
1、从库使用GTID的方式change到主库:
change master to 
master_host='192.168.100.200',
master_user='abobo', 
master_password='123', 
master_auto_position=1;
注释:
master_auto_position=1,让从库自动到主库的第一个GTID去找。
 
2、查看slave信息:
show slave status\G;
可以看到executed gtid set:这个表示slave端没有执行过任何事务的GTID。并且,自动位置为1
 
3、开启同步:
start slave 
 
4、查看同步状态:
show slave status\G;
 
5、查看主库:

GTID的主从复制的配置的更多相关文章

  1. Mysql5.7实现主从复制、基于GTID的主从复制、并行复制

    (一.主从复制) 一.mysql主从复制原理    mysql的默认复制方式是主从复制.Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制, ...

  2. 实现mysql的读写分离(mysql-proxy)____1(mysql的主从复制,基于gtid的主从复制,半同步复制,组复制)

    主从复制原理: 从库生成两个线程,一个I/O线程,一个SQL线程: i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中:主库会生成一个 log ...

  3. mysql5.7.26 基于GTID的主从复制环境搭建

    简单工作原理: (1)从库执行 change master to 语句,会立即将主库信息记录到master.info中 (2)从库执行 start slave语句,会立即生成IO_T和SQL_T (3 ...

  4. Dubbo入门到精通学习笔记(十九):MySQL源码编译安装、MySQL主从复制的配置

    文章目录 MySQL 源码编译安装(CentOS-6.6+MySQL-5.6) 一.服务器配置: 二.源码安装 MySQL5.6.26: MySQL主从复制的配置 环境 依赖课程 MySQL 主从复制 ...

  5. mysql主从之基于gtid的主从复制

    一 GITD介绍 1.1 gtid的含义 Global Transaction Identifier,全局事务标识 阿里云的rds目前已经使用gtid 基于gtid的主从复制原理 每个mysql数据库 ...

  6. MYSQL主从复制制作配置方案

    1. 主从复制机器配置 操作系统:centos7 x64 基于vagrant下的virtual box的虚拟机两台 master ip:192.168.21.11, slave ip 192.168. ...

  7. mysql主从复制安装配置

    mysql主从复制安装配置 基础设置准备 #操作系统: centos6.5 #mysql版本: 5.7 #两台虚拟机: node1:192.168.182.111(主) node2:192.168.1 ...

  8. 记一次 mysql主从复制安装配置 过程

    mysql主从复制安装配置 1.centos安装及准备 去centos官网下载相应source版本的镜像文件并在vmware中安装,安装中会遇到填写installation source,输入以下即可 ...

  9. MySQL5.6基于GTID的主从复制配置

    全局事务标示符(Global Transactions Identifier)是MySQL 5.6复制的一个新特性. GTID实际上是由UUID+TID组成的.其中UUID是一个MySQL实例的唯一标 ...

随机推荐

  1. Struts2的简单使用

    一.准备工作及实例 1.解压struts-2.1.6-all.zip apps目录:struts2自带的例子程序 docs目录:官方文档. lib 目录:存放所有jar文件. Src 目录:源文件存放 ...

  2. linux在桌面和dos之间的切换

    在linux 终端执行某条命令(init 5)时 提示一下错误 init :Need to be root 是提示要获取root权限 输入su 回车输入密码

  3. 阐述二维码的原理以及使用google api和PHP QR Code来生成二维码

    一.什么是二维码:二维码 (2-dimensional bar code),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的.在许多种类的二维条码中,常用的码 ...

  4. Oracle常用命令大全

    一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl ...

  5. Java释出的时候,AWT作为Java最弱的组件受到不小的批评

    Java释出的时候,AWT作为Java最弱的组件受到不小的批评. 最根本的缺点是AWT在原生的用户界面之上仅提供了一个非常薄的抽象层. 例如,生成一个AWT的 复选框会导致AWT直接调用下层原生例程来 ...

  6. C++ 运算符 [] & *、操作符new 修饰符const inline virtual

    1. [] 这让我想到静态分配内存和动态分配内存,与数据名称无关 局部变量和临时变量会储存在静态缓存区,随着程序运行完而消亡(例如在循环体中定义的局部变量随着循环体结束,局部变量也会消亡). 内存泄漏 ...

  7. 第四篇:“ 不确定 "限制值的使用

    前言 前篇文章解释了限制值的五种类型以及获取它们的方法.但是对于其中可能不确定的类型( 45类型 ),当限制值获取函数返回-1的时候,我们无法仅通过这个函数返回值-1来判断是限制值获取失败还是限制值是 ...

  8. iOS-地图开发 Plist文件设置权限

    解决办法: 在.Plist文件中添加 <key>NSLocationUsageDescription</key> <string>请点击“好”以允许访问. 若不允许 ...

  9. python之gevent模块实现协程

    Python通过yield提供了对协程的基本支持,但是不完全.而第三方的gevent为Python提供了比较完善的协程支持. gevent是第三方库,通过greenlet实现协程,其基本思想是: 当一 ...

  10. Mininet加强版——DOT(分布式OpenFlow试验平台)

    前言 之前在做SDN实验的时候,需要用到包含2000+个交换机的fattree拓扑,当时用的是mininet,生成整个拓扑需要十五六个小时,最终在异常艰苦的环境下做完了实验,之后听说了有DOT(Dis ...