主从

本文详细介绍了MySQL主从复制的三种方式:异步复制、半同步复制和GTID复制,包括各自的工作原理和关键配置。重点讲解了GTID复制的机制,如何利用GTID定位主从同步位置,以及如何处理复制延迟和跳过事务。
摘要由CSDN通过智能技术生成

mysql复制的三种方式

  1. 基于SQL语句的复制(statement-based replication, SBR) 对应binlog STATEMENT格式
  2. 基于行的复制(row-based replication, RBR) 对应binlog row格式
  3. 混合模式复制(mixed-based replication, MBR) 对应binlog mixed格式

show slave status\G 查看

  • slave I/O线程的状态
    1.waiting for master update 等待连接到主库进行同步,是连接之前的状态
    2.connecting to master 正在尝试连接到主库
    3.waiting to reconnect after a failed binlog dump request 因为断开连接,导致binlog请求失败,I/O线程进入休眠状态,定期尝试重连
    4.waiting for master to send event 连接正常,等待binlog
  • Master_Log_File 当前I/O线程正在读取的主服务器二进制日志文件的名称。
  • Read_Master_Log_Pos 当前I/O线程正在读取的二进制日志的位置。
  • Relay_Log_File 当前slave SQL线程正在读取并执行的relay log的文件名。
  • Relay_Log_Pos 当前slave SQL线程正在读取并执行的relay log文件中的位置
  • Relay_Master_Log_File SQL线程从relay日志中读取的正在执行的sql语句,对应主库的sql语句记录在主库的binlog日志信息
  • Slave_IO_Running I/O线程是否被启动并成功地连接到主服务器上。若为yes则说明成功连接8.Slave_SQL_Running SQL线程是否被启动,若为yes则说明正常连接
  • Relay_Log_Space 中继日志的总大小。
  • seconds_Behind_Master: 是slave当前的时间戳和master记录该事件时的时间戳的差值。
  • SQL_Delay 主从延迟
  • Slave_SQL_Running_State SQL线程运行状态
  1. Reading event from the relay log 线程已经从中继日志读取一个事件,可以对事件进行处理了。
  2. Has read all relay log / waiting for the slave I/O thread to update it 线程已经处理了中继日志文件中的所有事件,现在正等待I/O线程将新事件写入中继日志。
  • Retrieved_Gtid_Set 获取到的GTID<IO线程>
  • Executed_Gtid_Set 执行过的GTID<SQL线程>

参数

  • 主库参数
    binlog-do-db = # 需要复制的库 只记录某个数据库的binlog
    binlog-ignore-db = # 需要被忽略的库 不记录某个数据库的binlog
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值