视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
MySQLError1236错误解决办法
2020-11-09 09:56:16 责编:小采
文档


在一次不小心电脑突然掉电了,开机开就出来了080922 10:29:01 [Note] Slave SQL thread initialized, starting replication in log mysql-bin.000778 at position 2874108, relay log \' ./relay-bin.003287\' position: 2874245

今天几台MySQL服务器突然停电,重启后复制无法启动,总是报如下错误:

080922 10:29:01 [Note] Slave SQL thread initialized, starting replication in log '-bin.000778' at position 2874108, relay log ' ./relay-bin.003287' position: 2874245

080922 10:29:01 [Note] Slave I/O thread: connected to master 'replication@192.168.0.10:3306', replication started in log 'mysql-b in.000778' at position 2874108

080922 10:29:01 [ERROR] Error reading packet from server: Client ed master to start replication from impossible position ( se rver_errno=1236)

080922 10:29:01 [ERROR] Got fatal error 1236: 'Client requested master to start replication from impossible position' from master wh en reading data from binary log

为什么会报impossible position呢?打开mysql-bin.000778看看。

mysqlbinlog mysql-bin.000778 > log.sql

tail -f log.sql

# at 2871574 #080922 10:20:27 server id 2 end_log_pos 2871601 Xid = 2516638

COMMIT/*!*/;

DELIMITER ;

# End of log file

ROLLBACK /* added by mysqlbinlog */;

/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/

最后一个position是2871574,而从库要从2874108开始,难怪报impossible position,难道是断电时有部分log在缓存中还没来得及写入binglog?无论如何先恢复再说吧

stop slave;

CHANGE MASTER TO

MASTER_LOG_FILE='mysql-bin.000778',

MASTER_LOG_POS=2871574;

start slave;

show slave statusG

同步正常。

后来查看主库的启动日志中这样一段

InnoDB: Last MySQL binlog file position 0 2874108, file name ./mysql-bin.000778

080922 10:22:09 InnoDB: Started; log sequence number 6 2534366248

080922 10:22:09 [Note] Recovering after a crash using mysql-bin

080922 10:22:09 [Note] Starting crash recovery...

080922 10:22:09 [Note] Crash recovery finished.

080922 10:22:09 [Note] /usr/sbin/mysqld: ready for connections.

这里Last MySQL binlog file position 0 2874108也是错误的,这个信息到底是哪里来的呢?为什么会这样呢?不明白。

为了保证以后binglog及时写入,将主库sync_binlog变量设置1。

下载本文
显示全文
专题