我在主从设置中安装了MySQL(5.5),并创建了另一个从服务器。
我停止了原来的从属服务器,转储了数据,复制并重新导入了它,然后运行良好。我注意到了原始从站的master_log pos,并使用这些命令将其设置在新的从站上
CHANGE MASTER TO MASTER_HOST='<ipaddress>',
MASTER_USER='<username>', MASTER_PASSWORD='<password>',
MASTER_PORT=3306, MASTER_LOG_FILE='mysql-bin.000851',
MASTER_LOG_POS=15824150,
MASTER_CONNECT_RETRY=10;
当我开始新的奴隶时,我得到了
Last_IO_Error:从二进制日志读取数据时,主机出现致命错误1236:'日志事件条目超过了max_allowed_packet; 增加master上的max_allowed_packet
但是,当我启动原始从属服务器时,它运行起来很好,并且现在已同步。
所以问题是:
当前值是16M,我怎么知道要走多大?(我宁愿避免生产服务器的反复试验)。
当原来的从属服务器很好时,为什么我需要增加主控板上的值,问题可能出在新的从属服务器上吗?
更新
正如Rolando在主机,旧从机和新从机上建议的那样,我将max_allowed_packet增加到1073741824,然后重新启动它们(SET GLOBAL max_allowed_packet = 1073741824;
由于某些原因,似乎没有用)
现在最后一个IO错误与以前相同,但是现在我看到了
Last_SQL_Error:中继日志读取失败:无法解析中继日志事件条目。可能的原因是:主站的二进制日志已损坏(您可以通过在二进制日志上运行“ mysqlbinlog”来检查),从站的中继日志已损坏(可以通过在中继日志上运行“ mysqlbinlog”来检查)网络问题,或主从MySQL的错误。如果要检查主站的二进制日志或从站的中继日志,则可以通过在此从站上发布“ SHOW SLAVE STATUS”来知道其名称。
如果我在主文件上执行一个mysqlbinlog,它会用命令滚动很久很久很久-该文件为722M-如果我为从属中继日志执行该操作
错误:Log_event :: read_log_event()中的错误:“健全性检查失败”,data_len:38916267,event_type:69
错误:无法读取偏移量为253的条目:日志格式错误或读取错误。
我检查了变量,但所做的更改有效
mysql>显示变量LIKE'%max_allowed_packet%';
在新的从属设备上显示max_allowed_packet
AND slave_max_allowed_packet
,而在主设备上只有max_allowed_packet
所以我对母版进行了版本检查:
mysql> show variables LIKE '%version%';
+-------------------------+--------------------------------------+
| Variable_name | Value |
+-------------------------+--------------------------------------+
| innodb_version | 1.1.6 |
| protocol_version | 10 |
| slave_type_conversions | |
| version | 5.5.11-log |
| version_comment | MySQL Community Server (GPL) by Remi |
| version_compile_machine | x86_64 |
| version_compile_os | Linux |
+-------------------------+--------------------------------------+
在新的奴隶上
mysql> show variables LIKE '%version%';
+-------------------------+--------------------------------------+
| Variable_name | Value |
+-------------------------+--------------------------------------+
| innodb_version | 5.5.32 |
| protocol_version | 10 |
| slave_type_conversions | |
| version | 5.5.32-log |
| version_comment | MySQL Community Server (GPL) by Remi |
| version_compile_machine | x86_64 |
| version_compile_os | Linux |
+-------------------------+--------------------------------------+
这两个版本相距太远吗?