mysqlGTID主从配置
GTID主从简介
GTID是基于mysql生成的事务ID,由服务器ID和事务ID组成。
这个ID在主库及从库上都是唯一的。
这个特性可以让mysql的主从复制变得更加简单,一致性更加可靠。
GTID优势
- 更简单的实现同步,不需要再找log_file和log_pos
- GTID是连续的,没有中断,数据一致性高,不会发生丢失
- 搭建主从更简单
- 比传动主从更安全
GTID劣势
- 不支持主从关系中存在非事务数据库
- 不支持CREATE TABLE … SELECT语句
- 不支持针对临时表的操作:
- 开启 GTID 后不能再使用原来的传统的复制方式;
配置GTID主从
环境:
- 主数据库
- CentOS7/RedHat7
- IP-192.168.233.129
- Hostname-Lynk
- 有数据
- 副数据库
- CentOS7/RedHat7
- IP-192.168.233.247
- Hostname-Hyrule
- 无数据
给从库授权
#以下操作在主库进行
mysql> CREATE USER 'repl'@'192.168.233.247' IDENTIFIED BY 'repl123';
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.233.247';
Query OK, 0 rows affected (0.00 sec)
确保数据一致
#新开一个终端,对主库锁表,防止配置期间有其他人写入,锁表期间不能关闭终端或退出mysql交互式命令行
mysql> FLUSH TABLES WITH READ LOCK;
#全备主库
[root@lynk ~]# mysqldump -uroot -plynk123~ --all-databases > /opt/all-201902271749.sql
#复制备份文件到从库
[root@lynk ~]# scp /opt/all-201902271749.sql root@192.168.233.247:/opt/
#在从库恢复主库的备份
[root@Hyrule ~]# mysql -uroot -plynk123~ < /opt/all-201902271749.sql
配置主库
[root@lynk ~]# vim /etc/my.cnf
#添加以下内容
#数据库服务器唯一标识符,主库的server-id值必须比从库的大
server_id=1
gtid_mode=on
#强制gtid一致性,开启后对于特定create table不被支持
enforce_gtid_consistency=on
log_bin=master-binlog
log-slave-updates=1
binlog_format=row
skip_slave_start=1
#结束主库锁表状态,只要退出另一个终端中mysql交互式命令行就行了
mysql> quit
#重启主库
[root@lynk ~]# systemctl restart mysqld
配置从库
[root@Hyrule ~]# vim /etc/my.cnf
#添加以下内容
gtid_mode=on
enforce_gtid_consistency=on
server_id=2
log-bin=slave-binlog
log-slave-updates=1
binlog_format=row
skip_slave_start=1
#重启从库
[root@Hyrule ~]# systemctl restart mysqld
#配置主从复制
mysql> CHANGE MASTER TO
-> MASTER_HOST='192.168.233.129',
-> MASTER_USER='repl',
-> MASTER_PASSWORD='repl123',
-> MASTER_PORT=3306,
-> MASTER_AUTO_POSITION = 1;
Query OK, 0 rows affected, 2 warnings (0.03 sec)
mysql> start slave;
Query OK, 0 rows affected (0.01 sec)
mysql> show slave status \G
#确保以下两项是Yes
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
mysqlGTID主从配置的更多相关文章
- mysql主从配置
引言: 双11,阿里云服务器打折,于是我忍不住又买了一台服务器,于是咱也是有两台服务器的爷们了,既然有了两台服务器,那么肯定要好好利用一下吧,那么就来玩玩mysql的主从配置吧. 准备 两台数据库服务 ...
- postgresql pgsql最新版安装指南及数据存储路径更改及主从配置
postgresql pgsql最新版安装指南及数据存储路径更改及主从配置 安装指南 首先在apt的list添加你当前系统版本对应的apt列表 目前官网有16.04,14.04,12.04 分别对应下 ...
- Redis——学习之路四(初识主从配置)
首先我们配置一台master服务器,两台slave服务器.master服务器配置就是默认配置 端口为6379,添加就一个密码CeshiPassword,然后启动master服务器. 两台slave服务 ...
- redis主从配置及主从切换
环境描述: 主redis:192.168.10.1 6379从redis:192.168.10.2 6380 一.主从配置 1.将主从redis配置文件redis.conf中的aemonize no ...
- Redis集群(三):主从配置一
一.本文目的 Redis的主从配置分为两篇文章,第一篇主要介绍了Redis主从配置的搭建过程及使用,第二篇主要说明各种情况下Redis主从状态,如Master挂掉,Slaver挂掉, ...
- Mysql主从配置,实现读写分离
大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢 ...
- BIND的进程一:DNS简单配置与的主从配置
DNS的简单配置和DNS的主从配置 摘要:DNS(Domain-Name Server) ,DNS的服务起到的作用就是名称解析,在网络通讯来说计算机与计算机是通过IP地址相互通信的, 当是IP地址 ...
- redis主从配置
首先安装redis 我的redis安装在/app/redis/文件夹下 第二步,写两个redis实例的配置文件,一主一从.我的设计如下,6379端口为主,6380端口为从. 6379:redis_ma ...
- CentOS 7下的 Mysql 主从配置
最近在玩mysql主从配置,在此记录一下 一.前言 1.安装两个虚拟机(CentOS 7).iP分别是192.168.47.131 和192.168.47.133.其中192.168.47.133作为 ...
随机推荐
- selenium与chrome浏览器及驱动的版本匹配
用selenium+python+webdriver完成UI功能自动化,经常会碰到浏览器版本与驱动的版本不匹配而引起报错,下面就selenium与chrome浏览器及驱动的版本匹配 做个总结. 使用W ...
- DRF框架之认证组件用法(第四天)
1. 什么是drf 框架的认证组件: auth 就等于是jango中的Auth模块,Auth是自带session信息,但是 drf的认证组件可以自定义token携带过去,去判断用的 2.如何实现认证呢 ...
- activiti官网实例项目activiti-explorer之扩展多选框回显功能
相关参考链接:https://blog.csdn.net/murongxuesheng/article/details/76147380 回显:确认选中属性ng-model,循环属性ng-repeat ...
- python中网络编程之线程
网络编程之线程 什么是线程? 程序的执行线路.每个进程默认有一条线程.线程包含了程序的具体步骤. 多线程就是一个进程中有除主线程(默认线程)外还有多个线程. 线程与进程的关系(进程包含线程,而线程依赖 ...
- Spark环境搭建
转载:https://blog.csdn.net/songhaifengshuaige/article/details/79480491
- logstash定时将mysql种数据同步到elasticsearch
以Windows操作系统为例 1.下载logstash安装包,解压,配置好环境 2.在config目录中新增一个jdbc.conf input { stdin { } jdbc { # mysql 数 ...
- html跳动的心实现代码
<style> .box{ width: 200px; height: 400px; positio ...
- select 自匹配问题
原生js给select赋值或者vue绑定数据,会自匹配下拉选项的value或者key,从而显示对应的label或者对应的option的html eg: 原生: <select name=&quo ...
- File重要获取功能
返回值全是数组 String[] list() 返回当前路径下所有的文件和文件夹名称 注:只有指向文件夹的File对象才可以调此方法,如果只是文件则报错 File f = new File(" ...
- html 分页
/*列表分页底部按钮*/ div.tablefooter{ color: #4f6d95; } select.pageLength{ border: 1px solid #d0daea; border ...