【问题标题】:Possible MySQL sudden error可能的 MySQL 突然错误
【发布时间】:2014-08-25 05:47:53
【问题描述】:

来自 SO 的朋友您好!

好的,这次我有一个更复杂的问题。我们有一个网络爬虫在一天中的大部分时间里正常运行和运行。

但是,它有时会停止:接下来应该分析的链接,永远不会改变它的状态(从挂起到扫描),当然这会停止整个循环。

我们正在记录所有 PHP 错误:

//errores producción
@ini_set('error_reporting', -1);
@ini_set('log_errors','On');
@ini_set('display_errors','Off');
@ini_set('error_log','/var/www/vhosts/xxx.com/xxx.com/xxx');

没有任何证据表明有任何可能导致所描述的问题。 0 个异常。

因此,我认为该问题可能与某种 MySQL 问题有关?

我们所做的每一个 MySQL 查询都是由定制函数使用 MySQLi 完成的,所以我的问题是:


是否有任何简单的方法可以将每个 MySQL 错误记录在我们存储 PHP 错误的同一文件中?


以下是一些用于查询 MySQL 的函数:

Function db_ob($db_link, $ask) {
$feedback = mysqli_fetch_object(mysqli_query($db_link, $ask));
return $feedback;
}

和:

Function db_ob_all($db_link, $ask) {
$feedback = mysqli_query($db_link, $ask);
while ($row = mysqli_fetch_object($feedback)) { $value[] = $row; }
return $value;
}

所以我正在寻找的是一两行解决方案,我可以将其添加到这些函数中,以便在我当前存储 PHP 错误的同一文件中存储和跟踪任何问题或错误.

提前致谢! 克里斯;

【问题讨论】:

    标签: php mysql mysqli database-connection


    【解决方案1】:

    已解决:

    1) 创建一个函数来跟踪 PHP 错误日志中的错误:

    Function informar_error_db($db_link) {
    error_log("Dreadful SQL error: ". mysqli_error($db_link)." in ".$_SERVER["SCRIPT_FILENAME"]);
    }
    

    2) 如果有 MySQLi 问题,请保存:

    Function db_ask($db_link, $ask) {
    $feedback = mysqli_query($db_link, $ask);
    if (mysqli_error($db_link)) { informar_error_db($db_link); }
    return $feedback;
    }
    

    这里: if (mysqli_error($db_link)) { informar_error_db($db_link); }

    【讨论】:

      猜你喜欢
      • 2016-10-20
      • 2020-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多