我正在测试我正在制作的CMS上的性能,我想知道是否可以查看在页面加载上运行的查询。例如,假设我运行'test.php'。当我转到它时,页面底部的mySQL show运行的查询列表 - 这可能吗?我以前见过网站这样做过。
由于
答案 0 :(得分:2)
函数SHOW FULL PROCESSLIST
将显示所有进程的实时和过去历史记录。
如果您使用的是您有权安装软件包的服务器,则可以安装 mysqltop
并测试实时文件和MySQL资源的使用情况和查询。
答案 1 :(得分:0)
好吧,如果你的所有查询都通过一个函数然后它应该很容易,但如果每个只使用标准调用,那么它就不会。这也让你可以轻松切换到不同的数据库类型或类似的东西。
例如在CMS上我修改为库程序,我有一个数据库查询功能:
function db_query($qstring, $conn) {
$dbh = mysql_db_query($dbname,$qstring, $conn);
// this is where I would add some incrementing code, but it has to be global.
// or just do something like
if($_GET["debug"]=="debuginSQLcount"){
echo $qstring
}
return $dbh;
}
然后使用它,我只是做
之类的事情$sql = "SELECT stuff";
}
$result = db_query($sql, $link);
if (!$result || db_numrows($result) < 1) {
如果你这样做,那么只需在函数中添加一行,增加$ GLOBALS变量或类似的变量。阅读更多PHP global or $GLOBALS