Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > MySQL主从复制出现1236错误解决

MySQL主从复制出现1236错误怎么解决?教你快速定位修复

作者:姜太小白

遇到MySQL主从复制报错1236,提示请求位点大于文件大小?本文详细解析错误原因,教你通过对比主从位点快速定位问题,并提供彻底重置从库的解决方案,让复制恢复正常,避免数据不一致风险

1. 问题现象

初始状态:Slave_IO_Running: No,Slave_SQL_Running: Yes

核心报错:

Last_IO_Error: Got fatal error 1236 ... 'Client requested source to start replication from position > file size'

含义:

从库请求的起始同步位点(Position)大于主库对应二进制日志文件的实际大小。

2. 根因分析

通过对比主从信息,精准定位了问题:

检查项从库 (Slave)主库 (Master)
日志文件mysql-bin.000001mysql-bin.000001
位置/大小请求位置 Read_Master_Log_Pos = 886实际文件大小 File_size = 157

结论:

MASTER_LOG_POS=886 是当初执行 CHANGE MASTER 时手误填写的错误值,导致从库试图读取不存在的字节位置,I/O 线程报错中断。

3. 解决方案与调整过程

初次尝试(方案一):直接执行 CHANGE MASTER TO ... MASTER_LOG_POS=157,但错误依旧。

根本解决(彻底重置):在从库执行了更彻底的重置操作,清除了旧的中继日志和缓存信息,并重新指向主库当前正确的位点。

STOP SLAVE;
RESET SLAVE;      -- 清除旧的 master 信息
RESET SLAVE ALL;  -- 清除所有中继日志,彻底清理环境
CHANGE MASTER TO ... MASTER_LOG_POS=157; -- 重新配置正确位点
START SLAVE;

4. 最终结果

5. 核心经验与要点

6. 总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文