Mysql 基于GTID的主从复制(实操)
实现环境:
Master 主:192.168.0.102 (Mysql 5.6.36)
Slave 从 :192.168.0.103 (Mysql 5.6.36)
步骤
1.在主DB服务器上建立复制账号 (在Master上执行)
# mysql
mysql> CREATE USER 'repl'@'192.168.0.%' identified by '123456';
mysql> GRANT REPLICATION SLAVE ON *.* ' TO repl'@'192.168.0.%';
2.主服务器配置 (在Master上执行)
# vim /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
# binary logging #
log-bin = /data/mysql/log-bin #启动二进制日志
# replice #
server_id = 102 #指定服务ID
gtid_mode = on #开启GTID模式
enforce_gtid_consiste = on #强制GTID一致性(开启后CREATE TABLE ……SELECT ,创建临时表的语句不能再使用了)
log_slave_updates = on #将中继日志执行的结果写入到二进制日志中(5.7后在主库上可以不开,5.7强制开启)
3.从服务器配置 (在Slave上执行)
# vim /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
# binary logging #
log-bin = /data/mysql/mysql-bin #启动二进制日志
# replice #
server-id = 103 #指定服务ID
relay_log = /data/mysql/relay-bin #启动中继日志
gtid_mode = on #开启GTID模式
enforce_gtid_consistency = on #强制GTID一致性(开启后CREATE TABLE ……SELECT ,创建临时表的语句不能再使用了)
#log_slave_update = on #在中继日志执行后写入到二进制日志中
#read_only = on #开启只读模式
#master_info_repository = TABLE #建议开启,有利于数据安全
#relay_log_info_repository = TABLE #建议开启,有利于数据安全
4.重启主MYSQL (在Master上执行)
# service mysqld restart
# #添加一些测试数据用于验证结果
# mysql
mysql> CREATE DATABASE CHEN;
mysql> USE CHEN;
mysql> CREATE TABLE T1 (ID INT);
mysql> INSERT INTO T1 VALUES (1),(2),(3);
mysql> \q
5.重启从MYSQL (在Slave上执行)
# service mysqld restart
6.备份主数据库(如果主从上的数据库版本一样,可以全备) (在Master上执行)
# mysqldump --single-transaction --master-data=2 --triggers --routines --all-databases > 101_full.sql
7.将主数据库备份传输到从数据库中 (在Master上执行)
# scp /root/101_full.sql root@192.168.0.103:/root
8.将主数据库的备份导入到从数据库中 (在Slave上执行)
# mysql -uroot -p < 101_full.sql
9.初始复制链路 (在Slave上执行)
# mysql
mysql> change master to master_host='192.168.0.102',
-> master_user='repl',
-> master_password='123456',
-> master_auto_position=1;
10.启动当检查结果
mysql> start slave; (在Slave上执行)
mysql> show slave status \G (在Slave上执行) 进程启动
mysql> show processlist; (在Slave上执行) 两个系统进程
mysql> show processlist; (在Master上执行) 一个系统进行
mysql> SELECT * FROM `chen`.t1; (在Master上执行) 查检结果是否一致
mysql> SELECT * FROM `chen`.t1; (在Slave上执行) 查检结果是否一致
mysql> INSERT INTO `chen`.t1 VALUES (4); (在Master上执行)
mysql> SELECT * FROM `chen`.t1; (在Master上执行) 查检结果是否一致
mysql> SELECT * FROM `chen`.t1; (在Slave上执行) 查检结果是否一致
如果都没有问题,那就OK啦
Mysql 基于GTID的主从复制(实操)的更多相关文章
- Mysql基于GTID复制模式-运维小结 (完整篇)
先来看mysql5.6主从同步操作时遇到的一个报错:mysql> change master to master_host='192.168.10.59',master_user='repli' ...
- percona mysql server5.7基于gtid的主从复制
配置mysql基于gtid主从复制架构 一.二进制安装mysql [root@node5 data]# --Linux.x86_64.ssl101.tar.gz [root@node5 data]# ...
- mysql主从之基于gtid的主从复制
一 GITD介绍 1.1 gtid的含义 Global Transaction Identifier,全局事务标识 阿里云的rds目前已经使用gtid 基于gtid的主从复制原理 每个mysql数据库 ...
- Mysql5.7实现主从复制、基于GTID的主从复制、并行复制
(一.主从复制) 一.mysql主从复制原理 mysql的默认复制方式是主从复制.Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制, ...
- MySQL 基于 GTID 主从架构添加新 Slave 的过程
内容全部来自: How to create/restore a slave using GTID replication in MySQL 5.6 需求说明 需求: 对于已经存在的 MySQL 主从架 ...
- mysql -- mysql基于ssl的主从复制
mysql基于ssl的主从复制由于mysql在复制过程中是明文的,所以就大大降低了安全性,因此需要借助于ssl加密来增加其复制的安全性. 主服务器node1:172.16.200.1从服务器node2 ...
- linux下mysql基于mycat做主从复制和读写分离之基础篇
Linux下mysql基于mycat实现主从复制和读写分离1.基础设施 两台虚拟机:172.20.79.232(主) 172.20.79.233(从) 1.1软件设施 mysql5.6.39 , my ...
- Mysql基于GTID主从复制
Mysql5.6基于GTID全局事务的复制 什么是GTID? GTID(Global Transaction Identifiers)是全局事务标识 当使用GTIDS时,在主上提交的每一个事务都会 ...
- 实现mysql的读写分离(mysql-proxy)____1(mysql的主从复制,基于gtid的主从复制,半同步复制,组复制)
主从复制原理: 从库生成两个线程,一个I/O线程,一个SQL线程: i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中:主库会生成一个 log ...
随机推荐
- LR回放https协议脚本失败: 错误 -27778: 在尝试与主机“www.baidu.com”connect 时发生 SSL 协议错误
今天用LR录制脚本协议为https协议,回放脚本时出现报错: Action.c(14): 错误 -27778: 在尝试与主机"www.baidu.com"connect 时发生 S ...
- Node入门教程(4)第三章:第一个 Nodejs 程序
第一个 Nodejs 程序 本教程仅适合您已经有一定的JS编程的基础或者是后端语言开发的基础.如果您是零基础,建议您先学一下老马的前端免费视频教程 第一步:创建项目文件夹 首先创建 demos 文件夹 ...
- python之路--day15---软件开发目录规范
软件开发目录规范 bin--启动文件 conf--配置文件 core--核心代码 db--数据文件 lib--常用功能代码 log--日志文件 readme--软件介绍
- node防xss攻击插件
var xss = require('node-xss').clean; router.post("/orders/insert-orders", function (req, r ...
- WPF 自定义Calendar样式(日历样式,周六周日红色显示)
一.WPF日历控件基本样式 通过Blend获取到Calendar需要设置的三个样式CalendarStyle.CalendarButtonStyle.CalendarDayButtonStyle.Ca ...
- oracle drop table(表)数据恢复方法
今天不小心把系统用户表给drop掉了,正在运行的系统正式库啊,还好可以恢复 一.查看数据库回收站,看删除的表是否还在回收站select object_name,original_name,partit ...
- Linux搭建Apache+Tomcat实现负载均衡
一.首先需要安装java,详见http://www.cnblogs.com/fun0623/p/4350004.html 二.编译安装Apache,详见http://www.cnblogs.com/f ...
- Hive:添加、删除分区
添加分区: ', p_loctype='MHA'); 已经创建好的分区表: INFO : Loading partition {p_hour, p_city, p_loctype=MHA} INFO ...
- filter过滤器与map映射
filter过滤器 >>> list(filter(None,[0,1,2,True,False])) [1, 2, True] filter的作用就是后面的数据按照前面的表达式运算 ...
- jacascript 滚动 scroll 与回到顶部
前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 滚动 scroll scrollHeight 表示元素的总高度,包括由于溢出而无法展示在网页的不可见部分: ...