MySQL基准测试

2.4 基准测试工具

2.4.1 集成式测试工具

ab

它可以测试HTTP服务器每秒最多可以处理多少请求。

http_load

设计为对Web服务器进行测试,可以通过一个输入文件提供多个URL。

JMeter

是一个Java应用程序,可以加载其他应用并测试其性能。

2.4.2 单组件式测试工具

mysqlslap

可以模拟服务器的负载,并输出计时信息。测试时可以执行并发连接数,并指定SQL语句。

MySQL Benchmark Suite(sql-bench)

主要用于测试服务器执行查询的的速度。

Super Smack

可以提供压力测试和负载生成。

Database Test Suite

一款类似某些工业标准测试的测试工具集。

sysbench

是一款多线程系统压测工具。可以根据影响数据库服务器性能的各种因素来评估系统的性能。

MySQL的BENCHMARK()函数

Mysql有一个内置的BENCHMARK函数,可以测试某些特定操作的执行速度。例如:

mysql> SET @input := 'hello world';
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT BENCHMARK(1000000, MD5(@input));
+---------------------------------+
| BENCHMARK(1000000, MD5(@input)) |
+---------------------------------+
|                               0 |
+---------------------------------+
1 row in set (0.24 sec)

mysql> SELECT BENCHMARK(1000000, SHA1(@input));
+----------------------------------+
| BENCHMARK(1000000, SHA1(@input)) |
+----------------------------------+
|                                0 |
+----------------------------------+
1 row in set (0.22 sec)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

虽然BENCHMARK函数用起来很方便,但是不适合用来做真正的基准测试,引用很难理解真正要测试的是什么,而且测试的只是整个执行周期中的一部分环节。

最近更新: 3/31/2019, 4:05:30 PM