`

MySQL server has gone away 问题的解决方法

阅读更多

1、应用程序(比如PHP)长时间的执行批量的MYSQL语句。
最常见的就是采集或者新旧数据转化。

解决方案:

my.ini 文件中添加或者修改以下两个变量:
wait_timeout=2880000
interactive_timeout =  2880000


关于两个变量的具体说明可以google或者看官方手册。
如果不能修改my.cnf,则可以在连接数据库的时候设置CLIENT_INTERACTIVE,比如:
sql = "set interactive_timeout=24*3600";
mysql_real_query(...)


2、执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段。
比如,图片数据的处理
解决方案


my.cnf 文件中添加或者修改以下变量:
max_allowed_packet =  10M  (也可以设置自己需要的大小)

max_allowed_packet 参数的作用是,用来控制其通信缓冲区的最大长度。

 

[mysqld]

# The TCP/IP Port the MySQL Server will listen on
port=3306
wait_timeout=2880000
interactive_timeout = 2880000
max_allowed_packet = 10M
 

分享到:
评论

相关推荐

    MySQL server has gone away错误提示解决方法

    其次,超时问题也是导致MySQL Server has gone away错误的常见原因。MySQL服务器有两组超时设置,`wait_timeout`和`interactive_timeout`。前者针对非交互式连接(如Web应用),后者针对交互式连接(如命令行客户端...

    MySQL导入sql脚本错误:2006 解决方法

    MySQL导入sql脚本错误:2006 – MySQL server has gone away 到如一些小脚本很少报错,但最近导入一个10+M的SQL脚本,却重复报错: Error occured at:2014-03-24 11:42:24 Line no.:85 Error Code: 2006 - MySQL ...

    gearman中worker常驻后台,导致MySQL server has gone away的解决方法

    本文实例讲述了gearman中worker常驻后台,导致MySQL server has gone away的解决方法。分享给大家供大家参考,具体如下: 产生这个原因主要有如下几点: 1、mysql服务宕机了 2、长时间没有操作,超过了wait_timeout...

    解决MySQL server has gone away错误的方案

    在我们使用mysql导入大文件sql时可能会报MySQL server has gone away错误,该问题是max_allowed_packet配置的默认值设置太小,只需要相应调大该项的值之后再次导入便能成功。该项的作用是限制mysql服务端接收到的包...

    sql错误解决错误号:40error: 40

    在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 ...

    mysql提示got timeout reading communication packets的解决方法

    MYSQL server has gone away 引起这个原因是不可怕的.原因是更改了系统的断开时间. mysql>show gloable variables like “%timeout%”; 进行查看 interactive_timeout 的黓认值为28800 wait_timeout 的默认值这:...

    101个MySQL的调节和优化方法

    以下是对“101个MySQL的调节和优化方法”这一主题的深入解析,涵盖从硬件配置到软件参数设置,以及查询优化等多个层面的知识点。 ### 硬件配置优化 1. **InnoDB缓存池大小调整**:根据服务器内存资源,合理设定`...

    使用MySQL时的一些常见错误.docx

    本文将详细讨论两个常见的错误:“MySQL server has gone away”和“Can't connect to [local] MySQL server”。 首先,让我们关注“MySQL server has gone away”错误。这个错误通常意味着服务器在执行查询时超时...

    全国手机号码段归属地数据库(记录条数共415284条记录)

    若导入时报错,ERROR 2006 (HY000):MySQL server has gone away 。我们可以通过语句查看一下允许的最大包大小:show global variables like 'max_allowed_packet'; MySQL使用最大数据包站站点进行服务器和客户端...

    Qt5.4下连接Mysql,QSqlDatabase: QMYSQL driver not loaded but available-附件资源

    Qt5.4下连接Mysql,QSqlDatabase: QMYSQL driver not loaded but available-附件资源

    Django数据库连接丢失问题的解决方法

    OperationalError: (2006, ‘MySQL server has gone away’) OperationalError: (2013, ‘Lost connection to MySQL server during query’) 查询mysql全局变量SHOW GLOBAL VARIABLES;可以看到wait_timeout,此变量...

    关于MySQL的wait-timeout连接超时问题报错解决方案.docx

    然而,如果将其设置的太小,可能会遭遇到“MySQL has gone away” 之类的问题。 show variables 命令的误解 在使用 show variables 命令时,需要注意的是,这个命令实际上是查询的是会话变量,而不是全局变量。这...

Global site tag (gtag.js) - Google Analytics