slave日志中的错误代码1:
- [ERROR] Error reading packet from server: Client requested master to start replication from impossible position; the last event was read from "mysql-bin.000016" at 455562731, the last byte read was read from "mysql-bin.000016" at 4. ( server_errno=1236)
- 120725 23:19:17 [ERROR] Slave I/O: Got fatal error 1236 from master when reading data from binary log: "Client requested master to start replication from impossible position; the last event was read from "mysql-bin.000016" at 455562", Error_code: 1236
解决办法:先查看主服务器中对应日志文件是否有此行,使用的命令是mysqlbinlog /YOURPATH/
"mysql-bin.000016 >>/test查找有没有455562对应的行 或者和这个数字很接近的行 然后使用chang master to 命令跳过这行,命令格式如下- stop slave;
- CHANGE MASTER TO MASTER_HOST="192.168.192.45",MASTER_USER="XXXX",MASTER_PASSWORD="XXXX",MASTER_LOG_FILE="mysql-bin.000016",MASTER_LOG_POS=455678;
- start slave;
如果你找不到455562或者和这个数字很接近的行,你可以使用如下命令查看"mysql-bin.000016 的行数 - ls -la mysql-bin.000016
如果统计的行数远远少于455562,你可以跳过这个日志,从下一个日志开始复制,命令如下- stop slave;
- CHANGE MASTER TO MASTER_HOST="192.168.192.45",MASTER_USER="backup",MASTER_PASSWORD="weiphone",MASTER_LOG_FILE="mysql-bin.000017",MASTER_LOG_POS=4;
- start slave;
错误类型代码2:mysql slave Error_code: 1062 1054如果日志中出现了这样代码,可能是错误的select,或update操作,master是跳过这些操作,但是被记录到了二进制日志中,slave会依据二进制中的语句做相同的动作,就会报错,知道原理了要做的操作就很简单了
- stop slave;
- set gloable sql_slave_skip_counter=n; //n为你想跳过错误语句的个数
- start slave;
如果你不想再遇到这种错误,可以写到slave配置文件中格式如下:
- slave_skip_errors = 1062
- slave_skip_errors = all //跳过所有类型的错误码
Ubuntu 定时备份Oracle数据库实现使用cmake方式安装mysql-5.5.10相关资讯 MySQL主从复制
- CentOS搭建MySQL主从复制,读写分 (今 07:44)
- MySQL主从复制原理应用基础 (08月27日)
- MySQL主从复制 实践 (08月22日)
| - MySQL主从复制出现1205错误 (08月31日)
- MySQL 主从复制原理 (08月22日)
- 使用XtraBackup进行MySQL不锁表主 (08月09日)
|
本文评论 查看全部评论 (0)