当前位置: 首页 > 知识库问答 >
问题:

如何增加MySQL的最大允许数据包大小?

鱼安然
2023-03-14

我遇到了MySQL的问题。我收到错误查询期间丢失与MySQL服务器的连接。关于StackOverflow,他们说MySQL配置中的max_allowed_packet很可能太低。

我尝试在/etc/mysql/my.cnf中更改它,但该文件是不可编辑的。不能在PA上使用sudo

我正在使用Sqlalchemy处理与MySQL服务器的交互。

我能做什么?

共有2个答案

法烨烨
2023-03-14

您可以在客户端和服务器端指定此标志,但服务器端是限制。你可以按照比尔卡温的回答或尝试改变客户端和什么影响。

客户端上,shell:

mysql --max_allowed_packet=32M mydb -e 'SELECT * FROM table1'

在客户端,PyMySQL示例:

g.db = pymysql.connect(
  host               = 'localhost',
  port               = 3306,
  user               = 'user',
  password           = 'password',
  database           = 'mydb',
  max_allowed_packet = '32M'
)
申屠瀚海
2023-03-14

如果您有超级特权,您可以更改全局变量。但是您不能使那些更改持续存在,因此如果MySQL服务器重新启动,更改将恢复到原始值。

mysql> set global max_allowed_packet=1024*1024*32;
Query OK, 0 rows affected (0.00 sec)

我对Python并不熟悉,但我想如果您没有编辑配置文件的权限,那么您可能也没有超级特权。

唯一的其他选择是,您将自己限制在符合max_allowed_packet的查询和结果中,该max_allowed_packet是由运行Python Anywhere的人员为您配置的。

如果您需要更多的电源,那么是时候学习运行自己的服务器了。

 类似资料:
  • 我在处理中运行递归方法,但当作业太大时,它会给我以下错误: 由于等待数据包139时超时,事件线程崩溃。 但当递归很小时,它可以工作。有没有办法增加堆栈以解决更大的递归问题? 这是我的代码,用于在屏幕上绘制人物。它适用于较小的数字,但不适用于较大的数字。 回溯:

  • 问题内容: 我可以一次发送到的最大数据大小HttpURLConnection是Tomcat多少?请求大小是否有限制? 问题答案: maxPostSize 容器FORM URL参数解析将处理的POST的最大大小(以字节为单位)。可以通过将此属性设置为小于或等于0的值来禁用该限制。如果未指定,则将该属性设置为2097152(2兆字节)。 另一个限制是: maxHttpHeaderSize请求和响应HT

  • 问题内容: 使用SQL检查Oracle数据库允许的最大连接数的最佳方法是什么?最后,我想显示当前的会话数和允许的总数,例如“当前使用80个连接中的23个”。 问题答案: 确定Oracle数据库支持的连接数时可能会有一些不同的限制。最简单的方法是使用SESSIONS参数和V $ SESSION,即 数据库配置为允许的会话数 当前活动的会话数 但是,正如我所说,在数据库级别和操作系统级别,以及是否已配

  • 我正在处理大量的二进制文件。在最近对本地git repo进行了一次更改之后,我试图将更改推回到远程,结果收到以下错误。 不幸的是,我不能使用这里描述的策略,因为所有的更改都包含在一次提交中。有什么建议吗?我怎样才能绕过这个包装尺寸限制?

  • 这与其他关于Node中错误消息的问题不同,错误消息中写着RangeError:超出最大调用堆栈大小,因为我确切地知道为什么会收到这条错误消息。它的发生是因为我在递归,事实上递归了很多次。 谢谢。

  • 在GCP上部署Spring启动应用程序时,显示了以下错误。 错误:(gcloud.app.deploy)无法上载文件[/home/info/Project1/target/appengine staging/myproject-0.0.1-SNAPSHOT.jar],该文件的大小为[42865605](大于允许的最大大小[33554432])。请删除该文件或添加到应用程序中的skip\u file