用于查询的数据包太大(1134> 1024),这总是显示,并且max_allow_packet配置为1024,要么将ulimit'打开文件'和MySQL'open_files_limit'提升到1024000,但是这个错误仍然显示
答案 0 :(得分:0)
您需要增加max_allowed_packet
值而不是ulimit,在执行查询之前在终端中尝试以下操作:
mysqld --max_allowed_packet=20M
或者您甚至可以在my.cnf
文件中设置以下内容并重新启动MySQL
:
max_allowed_packet=20M
Here's MySQL文档。
答案 1 :(得分:0)
通过增加非root用户的打开文件限制来解决此问题
$ ulimit -n
如果是1024字节,那么应该通过输入
来增加它
$ ulimit -n 2048
但如果系统重启,它不是一个永久的解决方案,ulimit将恢复到默认值。要使其永久化,请按照以下链接。
作为root,我可以将该限制更改为我想要的任何内容,无论是向上还是向下。它似乎甚至不关心/ proc / sys / fs / file-max中所谓的系统范围限制
#cat /proc/sys/fs/file-max
188897
#ulimit -n 188898
#ulimit -n
188898
有关更多信息,请执
https://www.tecmint.com/increase-set-open-file-limits-in-linux/