除了对Web服务器进行测试外,数据库服务器也是系统的瓶颈之一,因此,我们还可以对数据库进行压力测试。关于MySQL的慢查询、explain分析等,这些主要是针对单条SQL语句的,其结果反映了SQL语句的优劣;而对MySQL进行的压力测试,则可以反映SQL语句的优劣和MySQL服务器的性能。
1. 利用mysqlslap工具测试MySQL
mysqlslap是一个MySQL官方提供的压力测试工具,通过模拟多个并发客户端访问MySQL来执行测试,使用起来非常简单。通过 mysqlslap --help 命令,可以查看可用的参数。
打开命令行,切换至mysql的bin目录,执行命令如下:
cd E:\xampp\mysql\bin
mysqlslap --help
下面列出一些比较重要的参数:
defaults file:配置文件存放位置。
create schema:所要测试的数据库。
concurrency:并发数。
engines:测试引擎,可以有多个,用分隔符隔开。
iterations:迭代(重复)的实验次数。
socket:用来连接数据库的socket文件的文件。
debug info:打印内存和CPU的信息。
only print:只打印测试语句而不实际执行。
auto generate sql:自动产生测试的sql语句。
auto generate sql load type:测试sql的类型,类型有mixed、update、write、key、read。