如何防止PHP脚本因超长的mysql查询而超时

Eri*_*win 12 php mysql timeout

我有一个更新查询由一个超时的cron任务运行.在navicat中执行时,查询平均需要五分钟才能执行.

代码看起来大致如此.这很简单:

// $db is a mysqli link
set_time_limit (0); // should keep the script from timing out
$query = "SLOW QUERY";
$result = $db->query($query);
if (!$result)
    echo "error";
Run Code Online (Sandbox Code Playgroud)

即使脚本不应该超时,等待sql调用所花费的时间似乎仍然会超时.

是否有可以使用的异步调用?或者调整超时?

超时是否不同,因为它是从命令行而不是通过Apache调用的?

谢谢

Kar*_*ten 34

我有同样的问题somwhere,并使用以下代码"解决"它(我的文件的前两行):

set_time_limit(0);
ignore_user_abort(1);
Run Code Online (Sandbox Code Playgroud)

  • 2008年回答的。2013年仍然帮助我。非常感谢先生。 (2认同)
  • 很高兴找到这个答案!^ 快2014年了,还是有帮助的! (2认同)