我有MySQL存储过程,使用 GROUP_CONCAT 返回一个字符串,其中 1200 - 1300 字符。但是,当我的Java代码返回数据包时,长度将减少到 1023/1024 。
我尝试将MySQL的 max_allowed_packet 增加到 524288000 , group_concat_max_len 增加到 1000000000 但是没有运气。
关于此事的任何想法?
答案 0 :(得分:2)
更改参数group_concat_max_len
以克服此限制。
为此,您可以使用以下命令
set session group_concat_max_len = 100000;
请注意,此更改是特定于会话的,即...临时。因此,您必须在group_concat
查询之前执行上述操作。
对于您的信息,group_concat_max_len的默认值为1024。
其他信息
您也可以使用以下查询
进行设置set global group_concat_max_len = 100000;
即使您使用了它,如果重新启动mysql,您也会错过它。如果您想永久更改,请使用以下
在mysql配置文件中,在[mysqld]
添加
group_concat_max_len=100000
然后重新启动。