我们正在尝试安装海牛软件,我们收到了这个错误。
mysql -u manatee cgspu -p --max_allowed_packet=4096M < to-insert.sql
Warning: option 'max_allowed_packet': unsigned value 4294967296 adjusted to 2147483648
Enter password:
ERROR 1153 (08S01) at line 1: Got a packet bigger than 'max_allowed_packet' bytes
Mysql确实设置了max_allowed_packets,我们检查了mysql --help
显示
max_allowed_packet 2147483648
有没有办法绕过这个?我不得不从makefile中的初始数据库填充中删除该单行,甚至让它安装软件。
现在我在数据库外面留了一行,无法插入它。
答案 0 :(得分:3)
修改强>
您可能需要在服务器上设置max_allowed_packet
。
试试这个:
(echo 'SET GLOBAL max_allowed_packet=1073741824;' ; cat to-insert.sql) |
mysql -u manatee cgspu -p --max_allowed_packet=1073741824
并查看是否可以解决您的问题。
to-insert.sql
是否包含大于2G的单个SQL语句?
或者它是否包含多行INSERT
:
INSERT INTO example VALUES
(1),(2),(3), ....
如果是,请将这些语句重写为单独的INSERT
语句:
INSERT INTO example VALUES (1);
INSERT INTO example VALUES (2);
INSERT INTO example VALUES (3);
如果您使用to-insert.sql
创建了mysqldump
,请尝试使用以下命令重新导出记录:
mysqldump --skip-extended-insert ...