当前位置:首页 > 知道中心 > MYSQL > 文章

MYSQL主从同步报错

发表于:2013-09-24| 次阅读| 作者:藕码网
TAG: MYSQL
摘要:MYSQL主从同步时出现”Client requested master to start replication from impossible position”错误
这个错误是因为从服务器请求一个错误的位置而引起的.比如主服务器上的BLIN LOG里没有这个POSITION.
解决原理:
从相关的BIN LOG 里最后一个日志位置,与从服务器上的日志对比,如果LOG里最后位置比错误的位置大,那么,说明中间可能有断点,需要把从服务器的位置向前调,多试几次.
如果在LOG里最后的位置比从服务器指出的位置还小,那么只要把从服务器的位置设置成LOG的最后位置就可以了.

mysqlbinlog mysql-log-bin.000112 >log.sql
tail -f log.sql
# at 568380594
#110616  3:10:16 server id 1  end_log_pos 568380757     Query   thread_id=123899        exec_time=0     error_code=0
use thecheap_topshoppinguscom/*!*/;
SET TIMESTAMP=1308226216/*!*/;
DELETE FROM `thecheap_topshoppinguscom`.`zm_sessions` WHERE expiry < 1308224416
/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;

发现这个位置比从服务器上的位置(568397810)还小,只要设置成最后位置,然后启动SLAVE就可以了.
CHANGE MASTER TO
MASTER_LOG_FILE=’mysql-log-bin.000112′,
MASTER_LOG_POS=568380594;


注:本站部分信息可能源于互联网分享,如有侵权,请告知,我们将及时删除!