2011-05-25 67 views
2

我写一个类来检查一些统计数据,我不知道是什么意思的条款,如果他们是坏的MYSQL统计

$array = explode(" ", mysql_stat()); 
foreach ($array as $value){ 
    echo $value . "<br />"; 
} 

输出:

Uptime: 4520 
Threads: 3 
Questions: 295957 
Slow queries: 0 
Opens: 905 
Flush tables: 1 
Open tables: 32 
Queries per second avg: 65.477 

是有问题 ?

PS:找到未关闭的mysql连接的任何方法?

谢谢!

回答

2

您是否遇到数据库性能问题,或者您是否有另一个编写统计类的理由?不知道这些价值是什么意思,他们永远不会对你有意义。

有一篇关于techrepublic的文章可以帮助解释一些信息;您也可以查看关于服务器状态变量here的官方文档。这对你来说可能是一个很好的起点。

PS:Threads_connected会给你当前打开的连接数量;你在找什么?

+0

以及如何找出Threads_connected? – 2011-05-25 20:11:17

+0

用mySQL [SHOW STATUS](http://dev.mysql.com/doc/refman/5.1/en/show-status.html)查询。 – Problematic 2011-05-25 20:12:29

+0

谢谢! :P .... – 2011-05-25 20:19:45

2

唯一有意义的性能指标是用户对响应时间的体验。如果此度量指示问题,请使用RDBMS生成的统计信息来帮助调查响应速度缓慢的原因。

统计数据本身并不意味着什么,但是与加载相比,DB的其他细节变得有意义。例如'慢速查询0'看起来不错,但是如果你运行的是大型数据仓库'慢速查询1000',也可能是一个好的结果。

随着时间的推移跟踪统计数据有助于了解正常负载,然后当出现问题时,您可以将其与正常操作进行比较以确定哪些问题是错误的。

而且问题所在,请阅读每个属性的含义,以便您可以导出背后的信息。

+0

谢谢Karl .. :) – 2011-05-25 20:20:22