MYSQL主从复制,数据库版本不一致导致的问题
环境如下:
linux服务器
linux服务器IP地址192.168.117.66
linux服务器上的mysql版本是5.6
linux服务器上的mysql作为主库
windows服务器
windows服务器IP地址192.168.117.1
windows服务器上的mysql版本是5.5
windows服务器上的mysql作为从库
之所以会报错,报错: Last_IO_Error: Got fatal error 1236 from master when reading data from binary..........
就是因为主从数据库的版本不一致导致的
解决办法就是,先去主库,执行如下语句
set global binlog_checksum='NONE';
show variables like '%checksum%';
再重新配置从库连接主库,问题得以解决
#停止从库服务
STOP SLAVE;
#从库
CHANGE MASTER TO
master_host='192.168.117.66',
master_user='test',
master_password='test',
master_log_file='mysql-bin.000003', #根据主库的SHOW MASTER STATUS;的结果来定
master_log_pos=120; #根据主库的SHOW MASTER STATUS;的结果来定
#启动从库服务,以下这2种写法都可以
START SLAVE;
SLAVE START;
但是这样有个问题
主库每次重启数据库,都需要重新输入set global binlog_checksum='NONE';命令,还挺麻烦的
有个一劳永逸的办法,就是去修改主库的my.cnf配置文件,修改完配置文件后,记得重启一下主库数据库