我有一个长期运行的PHP脚本。我在脚本的最开始处建立数据库连接,并在启动时执行一些数据库操作。
之后,该脚本执行4个小时的PHP操作,而无需使用该连接ping MySQL,即使是一次。
在这些长时间运行的PHP操作结束时,当我尝试执行mysql_query
时,它会出现以下错误:MySQL Server has gone Away
是否有可能将连接超时增加到4小时?我正在使用PHP ADODB
从我的PHP应用程序连接MySQL。
请建议做什么?
答案 0 :(得分:12)
MySQL的超时时间与PHP不同。您可以在php.ini
行的mysql.connect_timeout = 14400
中将其增加。同时增加default_socket_timeout = 14400
请注意,如果您的PHP设置允许您执行ini_set
,您还可以执行以下操作:
ini_set('mysql.connect_timeout', 14400);
ini_set('default_socket_timeout', 14400);