主库配置:
(一)、修改配置文件:在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. 查看网络连接数目(解决TIME_WAIT过多造成的问题_转)

      转自:解决TIME_WAIT过多造成的问题 (eroswang的csdn) #netstat -n | awk '/^tcp/ {++S[$NF]} END { for(a in S) print ...

  2. 小型web服务器thttpd的学习总结(上)

    1.软件的主要架构 软件的文件布局比较清晰,主要分为6个模块,主模块是thttpd.c文件,这个文件中包含了web server的主要逻辑,并调用了其他模块的函数.其他的5个模块都是单一的功能模块,之 ...

  3. CentOS/Linux 网卡设置 IP地址配置永久生效

    CentOS/Linux下设置IP地址 1.临时生效设置 1.1修改IP地址 #ifconfig eth0 192.168.100.100 1.2修改网关地址 #route add default g ...

  4. HIBERNATE与 MYBATIS的对比,在这里做一下总结

    我是一名java开发人员,hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和 ...

  5. 第二百二十四节,jQuery EasyUI,ComboGrid(数据表格下拉框)组件

    jQuery EasyUI,ComboGrid(数据表格下拉框)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解 EasyUI 中 ComboGrid(数据表格下拉框)组件的 ...

  6. js常用API汇总(转)

    typeof(); 检测数据类型 String(); 转换成字符串 parseInt(); 解析出一个string或number的整数部分 parseFloat(); 解析出一个string的浮点数部 ...

  7. Innodb间隙锁,细节讲解(转)

    关于innodb间隙锁,网上有很多资料,在此不做赘述,我们讲解一下关于innodb的间隙锁什么情况下会产生的问题. 网上有些资料说innodb的间隙锁是为了防止幻读,这个论点真的是误人子弟.了解inn ...

  8. iOS开发之 -- 判断tableview/scrollview的滑动方法,及导航栏渐变的实现代码

    开发的过程中,肯定会用到在视图想上滑动的时候,在导航处做一些操作,比如向上滑动的时候,做个动画,出现一个搜索框,或者其他的操作,那么我们怎么来判断它的滑动方向呢? 首先我们应该知道tableview继 ...

  9. 网站速度优化模块HttpCompressionModule

    为了优化网站的访问速度,准备采用HttpCompressionModule 6对传输数据进行压缩,下载了HttpCompressionModule 6 , 并按照示例程序中的web.config配置了 ...

  10. 编写高质量代码–改善python程序的建议(二)

    原文发表在我的博客主页,转载请注明出处! 建议七:利用assert语句来发现问题断言(assert)在很多语言中都存在,它主要为调试程序服务,能够快速方便地检查程序的异常或者发现不恰当的输入等,可防止 ...