环境
系统平台:Linux x86-64 Red Hat Enterprise Linux 7
版本:6.0
症状
迁移工具迁移MySQL时报错:Packet for query is too large (4482427>4194304)
问题原因
迁移工具中MySQL jar读取源库数据库对象时会根据配置文件会限制Server接受的数据包大小。进行插入、更新或查询时数据包的大小,会受 max_allowed_packet 参数限制,导致操作失败。
解决方案
方案一:
(1).在mysql控制台下输入以下命令,设置max_allowed_packet为20M
set global max_allowed_packet = 2010241024;
(2).退出mysql,重启mysql服务,再登录myql中查询max_allowed_packet是否修改成功
show VARIABLES like ‘%max_allowed_packet%’;
方案二:
修改配置文件my.cnf方式
(1).mysql控制台下输入以下命令,编辑my.cnf
sudo vi? /etc/mysql/my.cnf?
(2).在[mysqId]下面添加
max_allowed_packet = 20M
报错编码
Packet for query is too large (4482427>4194304)