mysql主从复制1236错误

今天监控显示mysql主从复制出错了,信息如下:

mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State:
                  Master_Host: 192.168.33.230
                  Master_User: repl
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: master-bin.000774
          Read_Master_Log_Pos: 202924128
               Relay_Log_File: 192-168-33-236-relay-bin.000065
                Relay_Log_Pos: 202924292
        Relay_Master_Log_File: master-bin.000774
             Slave_IO_Running: No
            Slave_SQL_Running: Yes
              Replicate_Do_DB:
          Replicate_Ignore_DB:
           Replicate_Do_Table:
       Replicate_Ignore_Table:
      Replicate_Wild_Do_Table:
  Replicate_Wild_Ignore_Table:
                   Last_Errno: 0
                   Last_Error:
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 202924128
              Relay_Log_Space: 202924521
              Until_Condition: None
               Until_Log_File:
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File:
           Master_SSL_CA_Path:
              Master_SSL_Cert:
            Master_SSL_Cipher:
               Master_SSL_Key:
        Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 1236
                Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: ‘Client requested master to start replication from position > file size; the first event ‘master-bin.000774‘ at 202924128, the last event read from ‘./master-bin.000774‘ at 4, the last byte read from ‘./master-bin.000774‘ at 4.‘
               Last_SQL_Errno: 0
               Last_SQL_Error:
  Replicate_Ignore_Server_Ids:
             Master_Server_Id: 1
                  Master_UUID: f7c24af7-a54a-11e6-88b4-525400169c04
             Master_Info_File: /Data/mysql/master.info
                    SQL_Delay: 0
          SQL_Remaining_Delay: NULL
      Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it
           Master_Retry_Count: 86400
                  Master_Bind:
      Last_IO_Error_Timestamp: 170817 15:37:11
     Last_SQL_Error_Timestamp:
               Master_SSL_Crl:
           Master_SSL_Crlpath:
           Retrieved_Gtid_Set:
            Executed_Gtid_Set:
                Auto_Position: 0
1 row in set (0.00 sec)

ERROR:
No query specified

在mysql.cnf里面有一句跳过经常出现的错误,但是还是报了1236错误

slave-skip-errors = 1062,1091,1396,1050,1060,1054,1146,1236

尝试stop slave ; start slave 还是没有恢复

然后就照着上面的错误提示更新pos点

mysql> stop slave;
Query OK, 0 rows affected (0.01 sec)

mysql> change master to master_log_file=‘master-bin.000774‘, master_log_pos=4;
Query OK, 0 rows affected (0.12 sec)

mysql> start slave;
Query OK, 0 rows affected (0.00 sec)

然后查看状态就恢复正常了,具体原因再慢慢分析,,,,,,,

有时候还会报下面这个信息

              Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: ‘could not find next log; the first event ‘mysql-bin.001891‘ at 897184977, the last event read from ‘./mysql-bin.001891‘ at 1109808979, the last byte read from ‘./mysql-bin.001891‘ at 1109808979.‘

上面这个错误尝试stop slave ; start slave 就恢复了

  

  

时间: 2024-07-30 13:05:26

mysql主从复制1236错误的相关文章

mysql 主从复制常见错误

Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server ids; these ids must be different for replication to work (or the --replicate-same-server-id option must be used on slave but this does not always

mysql 主从复制 忽略错误

mysql主从复制,经常会遇到错误而导致slave端复制中断,这个时候一般就需要人工干预,跳过错误才能继续跳过错误有两种方式:1.跳过指定数量的事务:mysql>slave stop;mysql>SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1        #跳过一个事务mysql>slave start 2.修改mysql的配置文件,通过slave_skip_errors参数来跳所有错误或指定类型的错误vi /etc/my.cnf[mysqld]#slave

MySQL主从复制遇到错误的处理办法

MySQL在主从复制的时候经常遇到错误而导致Slave复制中断,这个时候就需要人工干涉,来跳过这个错误,才能使Slave端的复制,得以继续进行: 跳过错误的方法: MariaDB [(none)]> STOP SLAVE; MariaDB [(none)]> SET GLOBAL  SQL_SLAVE_SKIP_COUNTER=1; MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE 'SQL_SLAVE_SKIP_COUNTER';  #跳过一个事

mysql报1236错误解决方法

mysql slave状态如下,发现IO线程为NO状态,并且报1236错误代码 mysql> show slave status\G *************************** 1. row ***************************                Slave_IO_State:                    Master_Host: 10.0.0.20                   Master_User: rep             

Mysql主从复制以及常见错误问题分析

Mysql主从复制以及常见错误问题分析 一.主从复制简介: 1.mysql主从复制原理: Mysql主从复制的实现,主要依赖于二进制日志来实现,过程主要是根据把主的MySQL 的数据复制到其它主机( Slave )上.在复制过程中,可以理解为一台mysql服充当服务器,而其他的mysql服务器充当从服务器,而这种从服务器可以是一个或者是多个.在主从复制过程中,mysql-master会将更新写入二进制日志,并维护文件的一个索引以跟踪日志循环.开启的二进制,mysql主服务器就会安装你配置的二进制

解决mysql开启GTID主从同步出现1236错误问题

最近遇到mysql开启gtid做复制时,从库出现1236错误,导致同步无法进行,本文就这问题记录下处理步骤,有关gtid知识在这里不做介绍,mysql版本为5.7.16. 一.错误原因分析 错误信息如下: Last_IO_Errno: 1236 Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'The slave is connecting using CHANGE MASTER

MySQL主从复制中常见的3个错误及填坑方案

一.问题描述 主从复制错误一直是MySQL DBA一直填不完的坑,如鲠在喉,也有人说mysql主从复制不稳定云云,其实MySQL复制比我们想象中要坚强得多,而绝大部分DBA却认为只要跳过错误继续复制就好啦,接下来不发生错误就好了,其实跳过错误就会有数据不一致的风险,数据不一致可能还会越来越严重,而我就复制错误中反复出现的1045.1032和1062错误引起的数据库主从不一致的的现象进行深入分析及给出一套完善的解决方案. (1) [ERROR]1452:无法在外键的表插入参考主键没有的数据 (2)

mysql主从复制跳过错误

mysql主从复制,经常会遇到错误而导致slave端复制中断,这个时候一般就需要人工干预,跳过错误才能继续跳过错误有两种方式:1.跳过指定数量的事务:mysql>slave stop;mysql>SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1        #跳过一个事务mysql>slave start 2.修改mysql的配置文件,通过slave_skip_errors参数来跳所有错误或指定类型的错误vi /etc/my.cnf[mysqld]#slave

MySQL主从复制中断,报“Error on master: message (format)='Cannot delete or update a parent row: a foreign key constraint fails' error code=1217” 错误

前几天,发现从库挂了,具体报错信息如下: 分析思路 1. 因为我采用的是选择性复制,只针对以下几个库进行复制: card,upay,deal,monitor,collect.所以,不太可能出现对于sas_basic的操作能复制到该从库上. 2. 整个架构是1主2从,且都是选择性复制,上面这个从库是直接复制card,upay,deal,monitor,collect这几个数据库的数据,而另外一个从库则是忽略上述库,如下所示: 怀疑是在上述schema下,执行了DROP TABLE IF EXIST