检查mysql数据库的负载
答
首先,一定要留意查询速度慢:http://dev.mysql.com/doc/refman/5.0/en/slow-query-log.html
mysqladmin extended
是非常有用的。有关提示,请参阅http://www.mysql.com/news-and-events/newsletter/2004-01/a0000000301.html。
答
您可以使用MySQL 5.1版后提供的mysqlslap
实用程序。
在windows命令提示符下查询以获取csv格式或文本格式的报告,如您所需。
mysqlslap.exe --user=root -p --auto-generate-sql --concurrency=40 --number-of-queries=10000 --number-char-cols=4 --number-int-cols=7 >> /Desktop/output.log -vv
mysqlslap.exe --csv=/Desktop/output.csv --user=root -p --auto-generate-sql --concurrency=50 --number-of-queries=500 --number-char-cols=4 --number-int-cols=7 -vv
该命令也在Unix服务器上运行。
该命令的输出结果会如下所示。
Building Create Statements for Auto
Building Query Statements for Auto
Parsing engines to use.
Starting Concurrency Test
Loading Pre-data
Generating primary key list
Generating stats
Benchmark
Average number of seconds to run all queries: 124.478 seconds
Minimum number of seconds to run all queries: 124.478 seconds
Maximum number of seconds to run all queries: 124.478 seconds
Number of clients running queries: 40
Average number of queries per client: 250
嗨eli,谢谢。无法访问慢查询日志ftm,但我会研究它。 但不能看到我如何输出mysqladmin扩展。我可以使用普通的PHP查询吗? – Industrial 2010-01-25 15:19:06
'mysqladmin'是你的服务器上的一个应用程序。你可以用一个普通的查询来完成它,但我对此不够了解。在PHP中,您可以运行'exec('mysqladmin extended')'让您的系统将其作为shell命令执行。 – Eli 2010-01-25 15:53:14