【问题标题】:MySQL replication Slave_SQL_Running fails after inserting dataMySQL 复制 Slave_SQL_Running 插入数据后失败
【发布时间】:2015-10-20 14:43:33
【问题描述】:

对于学校,我必须在同一台计算机上使用主从复制和 MySQL。

由于您无法在您的计算机上运行同一 MySQL 版本的多个实例,因此我将 MySQL 5.6 用于主服务器(端口 3306),将 MySQL 5.5 用于从服务器(端口 3307)。

执行以下查询后:

stop slave;
CHANGE MASTER TO
MASTER_HOST='localhost',
MASTER_PORT=3306,
MASTER_USER='MySQL_SLAVE',
MASTER_PASSWORD='mypasswordgoeshere',
MASTER_LOG_FILE='mysql-bin.000007',
MASTER_LOG_POS=1571;
start slave;
show slave status

我看到 Slave_IO_Running 和 Slave_SQL_Running 都成功了。

但是,在主数据库中插入数据后,Slave_SQL_Running 值从“是”切换到“否”。

Last_Error 列给出了这个:

1594 - 中继日志读取失败:无法解析中继日志事件条目。 可能的原因是:master的二进制日志损坏(可以通过在二进制日志上运行'mysqlbinlog'来检查),slave的relay log损坏(可以通过在relay log上运行'mysqlbinlog'来检查) ),网络问题,或者主从的 MySQL 代码中的错误。 如果你想检查主的二进制日志或从的中继日志,你可以通过发出“SHOW SLAVE STATUS”来知道它们的名字在这个奴隶上。

在我的 master 和 slave 的二进制日志上使用 mysqlbinlog 命令,我看不到任何错误。 由于我在一台计算机上运行这两个实例,我很确定我的问题不是由网络问题引起的。由于我只是将master的数据导入slave的数据,我很确定这也不是MySQL代码造成的。

有什么想法吗?

感谢您的宝贵时间!

【问题讨论】:

    标签: mysql replication


    【解决方案1】:

    通过将主服务器上的 binlog_format 从“ROW”更改为“MIXED”解决了问题。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-02
    • 1970-01-01
    • 1970-01-01
    • 2011-01-26
    • 1970-01-01
    • 2018-11-12
    • 2023-03-22
    相关资源
    最近更新 更多