关于SQLyog操作Mysql双主、主从同步异常问题

本人遇到的问题发生在mysql 5.6.21 M-M中:

Master1 Server version: 5.6.21-enterprise-commercial-advanced-log MySQL Enterprise Server - Advanced Edition (Commercial)

Master2 Server version: 5.6.21-enterprise-commercial-advanced-log MySQL Enterprise Server - Advanced Edition (Commercial)

Master1 Os version: CentOS release 6.5 (Final)

Master2 Os version: CentOS release 6.5 (Final)

同步相关参数:

Master1:

server-id=1

log-slave-updates

auto_increment_increment=2

auto_increment_offset=1

replicate-do-db=*****

relay_log_recovery

Master2:

server-id=2

log-slave-updates

auto_increment_increment=2

auto_increment_offset=2

replicate-do-db=*****

relay_log_recovery

问题描述:

SQLyog对Master1做DML操作时,记录未同步到Master2对应库表里;使用其他工具操作mysql,同步正常

排查过程:

1.首先查看Master1和Master2的master、slave状态,均显示基本正常;

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it

2.然后查看errlog,无相关错误信息

3.用mysqlbinlog解析master2的relay log和binlog,发现在relay log中存在SQLyog工具的DML语句,但是在binlog里面没有出现该DML语句

相关分析:

在“slave” 的relay中找到了相关sql,但是在binlog中没找到该sql,说明salve I/O线程日志的同步正常;只是slave SQL线程执行SQL有异常,

但是查看master和slave的状态,均显示正常,而且无报
错信息。网上查找相关资料,发现几个SQLyog同步问题比较典型的帖子,但均无解决办

法:

http://blog.csdn.net/linvo/article/details/6566215

http://bbs.csdn.net/topics/390672280

如果是客户端工具导致主主、主从同步异常的话,感觉解释起来有点太牵强,理论上讲不通,除非是mysql Slave_SQL_Running线程对

SQLyog的语句解析异常,直接跳过了SQLyog编译出的sql,这么解释还是感觉有点问题;但是说回来,用其他工具来操作mysql,同步正常无异

常。总之感觉有点怪异。

请求大神们能帮忙解释一下此问题。

时间: 2024-08-02 17:02:19

关于SQLyog操作Mysql双主、主从同步异常问题的相关文章

双主,主从同步设置的重要参数log_slave_updates

说明:最近部署了mysql的集群环境,详细如下M01和M02为主主复制,M01和R01为主从复制:在测试的过程中发现了以下问题: 1.M01和M02的主主复制是没有问题的(从M01写入数据能同步到M02,从M02写入数据能够同步到M01); 2.主从同步的时候,当从M01写入的时候,数据可以写入到R01: 3.当从M02写入的时候,数据就不能写入到R01: 问题的原因:log_slave_updates参数的状态为NO mysql的官网说明如下: Normally, a slave does n

MySQL双主(master-master)补充

环境: 主机名 主机IP 操作系统 MySQL版本 mysqlA 172.16.4.235 CentOS 6.52.6.32-431.el6.x86_64 mysql-community-server-5.7.5-0.6.m15.el6.x86_64 mysqlB 172.16.4.236 CentOS 6.52.6.32-431.el6.x86_64 mysql-community-server-5.7.5-0.6.m15.el6.x86_64 MySQL双主+半同步架构搭建参考上一篇博文:h

MySQL双主(master-master)补充

环境:主机名 主机IP 操作系统 mysqlA 172.18.252.221 CentOS 6.5 2.6.32-431.el6.x86_64 mysqlB 172.18.252.222 MySQL版本 mysql-community-server-5.7.5-0.6.m15.el6.x86_64 MySQL双主+半同步架构搭建参考上一篇博文:http://blog.51cto.com/12947626/2125165 本文做一点补充说明:如果mysqlA已经运行了一段时间,要添加一台新的mys

Mysql DBA 高级运维学习笔记-mysql双主及多主同步过程

1.Mysql双主及多主同步实战,互为主从 使用主主前提: a.表的主键自增(M库id1,3,5:M库id 2,4,6) 准备:两台机器,这里用多实例来讲解 第一台: Ip:192.168.1.115Port:3306 第二台: Ip:192.168.1.115Port:3307 1.1 第一台机器的操作 (1)配置3306的my.cnf配置文件添加打开下面参数 [[email protected] ~]# egrep "\[mysqld]|auto_increment|log-bin|log-

mysql双主同步

在实际项目中,两台分布于异地的主机上安装有MYSQL数据库,两台服务器互为主备,客户要求当其中一台机器出现故障时,另外一台能够接管服务器上的应用,这就需要两台数据库的数据要实时保持一致,在这里使用MYSQL的同步功能实现双机的同步复制. 1.数据库同步设置 主机操作系统:centos 数据库版本:mysql Ver 14.12 Distrib 5.0.22 前提:MYSQL数据库正常启动 假设两台主机地址分别为: ServA:192.168.0.101 ServB:192.168.0.203 I

MySQL运维进阶-MySQL双主(master-master)+半同步(Semisync Repl

MySQL --> MariaDB --> Percona-Server MySQL: oracle ,commutity : 社区版 5.5 5.6 5.7 8.0MariaDB:5.5 10.xPercona:Percona-ServerInnoDB --> XtraDBXtrabackuppercona-tools: 存储引擎:引擎:也称为表类型,表级别概念,不建议在同一个库中的表上使用不同的ENGINE:CREATE TABLE ... ENGINE STORAGE_ENGINE

MariaDB、MySQL双主互备模型同步数据

MySQL双主互备即两台MySQL服务器同时是主服务器,而同时又是对方的从服务器,这样可以分担主服务器的一部分写请求,因为如果是单主模型的话数据写入只能写入在一台MySQL服务器,而双主模型则可同时写在两台服务器上,有效加快了写入的速度,而且还能提供数据的备份功能. 环境如下: server1:CentOS 6.5 x86_64 mariadb 10.0.10 IP:192.168.10.204 server2:CentOS 6.5 x86_64 mariadb 10.0.10  IP:192.

MySQL双主(主主)架构方案

在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动.因此,如果是双主或者多主,就会增加mysql入口,增加高可用.不过多主需要考虑自增长ID问题,这个需要特别设置配置文件,比如双主,可以使用奇偶,总之,主之间设置自增长ID相互不冲突就能完美解决自增长ID冲突问题. 主从同步复制原理 在开始之前,我们先来了解主从同步复制原理. 复制分成三步: 1. master将改变记录到二进制日志(binary

keepalived+mysql双主

       mysql高可用keepalived+mysql双主 MySQL的高可用方案一般有如下几种: keepalived+双主,MHA,PXC,MMM,Heartbeat+DRBD等,比较常用的是keepalived+双主,MHA和PXC. 本节主要介绍了利用 keepalived 实现 MySQL 数据库的高可用. Keepalived+mysql双主来实现MySQL-HA,我们必须保证两台MySQL数据库的数据完全一样,基本思路是两台MySQL互为主从关系,通过Keepalived配