主数据库配置

[mysqld]

server_id=1
gtid_mode=on
enforce_gtid_consistency=on
skip_slave_start=1
log_bin=master-bin.log
log-slave-updates=1
binlog_format=row

从数据库配置

[mysqld]

server_id=17
gtid_mode=on
enforce_gtid_consistency=on
skip_slave_start=1
log_bin=slave-bin.log
log-slave-updates=1
binlog_format=row

主数据库建立复制用户

mysql> CREATE USER 'repl'@'123.57.44.85' IDENTIFIED BY 'repl123';#创建用户
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'123.57.44.85';#分配权限
mysql>flush privileges; #刷新权限

查看主库的位置和bin-log文件名

mysql> show master status;
+-------------------------+--------------+--------------------+------------------------------------------+---------------------------------------------------------------+
| File                         | Position    | Binlog_Do_DB | Binlog_Ignore_DB                     | Executed_Gtid_Set                                            |
+-------------------------+--------------+------------------- +------------------------------------------+---------------------------------------------------------------+
| master-bin.000002 | 4033066   |                         | mysql,test,information_schema | c70af242-f78b-11e8-bff8-0050569e0666:1-753 |
+-------------------------+--------- ----+--------------------+------------------------------------------+---------------------------------------------------------------+

从库操作

CHANGE MASTER TO MASTER_HOST='123.57.44.85',MASTER_USER='slave',MASTER_PASSWORD='repl123',MASTER_PORT=3306,MASTER_AUTO_POSITION = 1;

启动从库

start  slave;

查看slave状态

show slave status;

查看master状态

mysql> show slave hosts;
+-------------+-------+--------+--------------+--------------------------------------------------------+
| Server_id | Host | Port   | Master_id | Slave_UUID                                                |
+-------------+-------+--------+--------------+--------------------------------------------------------+
| 17          |          | 3306  | 1              | 330032df-f78b-11e8-b0ba-0033578eaa90 |
+-------------+-------+--------+--------------+--------------------------------------------------------+

跳过一个事务

和传统基于位置的主从不同,如果从库报错我们需要获得从库执行的最后一个事务,方法有如下:

  • show slave status \G 中的 Executed_Gtid_Set。
  • show global variables like '%gtid%'; 中的 gtid_executed 。
  • show master status;中的Executed_Gtid_Set。

然后构建一个空事务如下:

stop slave ;set gtid_next='4a6f2a67-5d87-11e6-a6bd-000c29a879a3:34';begin;commit;set gtid_next='automatic';start slave ;

如果是多个如下:

stop slave ;set gtid_next='89dfa8a4-cb13-11e6-b504-000c29a879a3:3';begin;commit;set gtid_next='89dfa8a4-cb13-11e6-b504-000c29a879a3:4';begin;commit;set gtid_next='automatic';start slave ;

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

  1. [转帖]mysql数据库主从配置

    mysql数据库主从配置 https://www.toutiao.com/i6680489302947791371/ 多做实验 其实挺简单的 很多东西 要提高自信 去折腾. 架构与我 2019-04- ...

  2. mysql的主从配置以及主主配置

    基础环境 系统:linuxmysql版本:5.5主服务器IP:192.168.1.101从服务器IP:192.168.1.102 1.主服务器(master)要打开二进制日志2.从服务器(slave) ...

  3. Mysql的主从配置

    前言:这次学习分布式的思想要配置mysql的主从复制和读写分离,我在主从配置上踩到很多坑,在此演示一遍配置过程,并附上问题的说明和自己的一些见解 Mysql主从复制的原理 附上原理图: mysql的主 ...

  4. Mysql数据库主从配置

    一.为什么要使用数据库主从架构 一个网站损耗资源最厉害的就是数据库,最易崩溃的也是数据库,而数据库崩溃带来的后果是非常严重的.数据库分为读和写操作,在实际的应用中,读操作的损耗远比写操作多太多,因此读 ...

  5. mysql传统主从配置与主从监控

    主从简介 在现代企业中,数据显得尤为重要,而存储数据的数据库选择又五花八门,但无论是何种数据库,均存在着一种隐患. 当数据规模非常大,读写量也很高时,一台数据库已经无法负担全部读写任务,就需要多台数据 ...

  6. Centos7下mysql的主从配置

    最近,有朋友业务并发量比较大,让我帮他配置个主从,来缓解数据库的压力.下面就是我配置的,有需要的朋友可以借鉴下. 首先,我得到2台服务器: 172.18.2.142(主) 172.18.2.141(从 ...

  7. Mysql Master-slave 主从配置

    MySQL主从复制 场景描述:主数据库服务器:192.168.10.130,MySQL已经安装,并且无应用数据.从数据库服务器:192.168.10.131,MySQL已经安装,并且无应用数据. 2. ...

  8. mysql主从复制 主从配置(windows系统上)

    OS:Windows7 DB:MYSQL5.6.2 1.正常安装第一个mysql(安装步骤省略)  2.在控制面板里停止第一个mysql服务  3.将C:\Program Files\MySQL目录下 ...

  9. mysql之主从配置实现

    我使用的是两台centos7虚拟机来做实验的,主服务器ip为192.168.2.128,从服务器ip为192.168.2.130 安装mysql就不用说了吧,不对,我们需要安装的是mariadb,命令 ...

随机推荐

  1. 深入理解Redis复制

    复制 A few things to understand ASAP about Redis replication. 1) Redis replication is asynchronous, bu ...

  2. hdu5943素数间隙与二分匹配

    题意: 给出n和s,匹配(s+1,s+2,s+3......s+n)和(1,2,3,4,5........n)让(s+x)%x==0,判断是否有解 思路: 先用程序跑一边,发现1到1e9得素数间隙小于 ...

  3. vue学习笔记总结----思维导图

  4. jupyter使用

    jupyter使用 安装 在anaconda3的安装路径中,尽量避免使用汉字或者括号. 启动 在Windows上正确安装Anaconda3,确认配置好环境变量,然后再命令行中输入jupyter not ...

  5. 【kindle笔记】之 《犬夜叉》-2017-12-26

    [kindle笔记]读书记录-总 2017-12-26 <犬夜叉> 买kindle的初衷是看计算机工具书看得眼快瞎了,我弟弟推荐给我的Linux系列<鸟叔私房菜> 真的是深思熟 ...

  6. Jmeter使用笔记之html报告扩展(一)

    题记:在用loadrunner的时候可以生成一个HTML的报告,并且里面包含各种图表,各种详细的数据.而在使用Jmeter测试完后并不能直接生成Html 的报告(无论是用GUI还是命令行启动). 经过 ...

  7. C++常用宏

    宏是由 #define 定义而来,在预处理阶段进行宏展开,它的格式是: #define N 2 + 2 // 仅仅是字符串替换 #define N (2 + 2) // 也是字符串 ,但是是(2 + ...

  8. 安装sqlprompt

    特别说明:注册机会报毒,安装前请先关闭杀毒软件!下载好附件之后解压,打开SQLPrompt_7.2.0.241.exe按照提示安装完成.安装完成后断网!打开数据库,会在菜单栏中看到SQL Prompt ...

  9. Junit概述

    Junit ->  java unit.也就是说Junit是xunit家族中的一员. unit   <- unit test case,即单元测试用例. Junit  = java uni ...

  10. java实现计算器

    Main_business.java import java.util.Scanner; public class Main_business { public void getMyCalculate ...