2

我很难找到由于 MySQL 而导致 CPU 负载过高的错误查询。我正在寻找一种让 PHP 在页面末尾打印连接到 MySQL 后进行的每个查询的方法。有没有办法在每个已经存在的 mysql 查询之后不改变代码来做到这一点?由于有很多包含文件,因此很难在脚本中找到每个查询。

我知道我可以将每个查询记录到 mysql 日志中,但我担心如此快速地编写可能数百个查询会使我的服务器更加过载。另外,查看在特定页面上进行的所有查询会更容易,然后一次查看一个。

提前致谢。

4

1 回答 1

5

我总是从MySQL 慢查询日志开始——记录每个查询会产生很多噪音。

如果您使用的是DAL(应该是),那么您可以将跟踪添加到 DAL。

否则,没有一种简单的方法可以让 PHP 跟踪 mysql,使用 php.ini mysql.trace_mode 只会出现警告和错误。(我已经检查了php_mysql的源代码,函数php_mysql_do_query_general并且没有任何东西可以记录所有内容。

于 2012-07-04T14:39:08.343 回答