Sysbench是一款开源的、跨平台的、模块化的、多线程的性能测试工具,通过高负载地运行在数据库上,可以执行CPU、内存、线程、IO、数据库等方面的性能测试。用于评估操作系统的性能参数。
目前主要支持的数据库有mysql、oracle、postgresql。
可评估的系统性能参数有:
1.CPU性能
2.内存分配与传输速度测试
3.互斥体测试
4.文件I/O性能
5.线程调度性能
6.数据库服务性能(OLTP基准)
本来sysbench主要是为mysql编写的benchmark。但是现在SysBench将进一步扩展,以支持更多的数据库backends,distributed benchmarks和第三方插件模块。
sysbench按照指定的数量开启线程,每个线程与mysql建立一个连接,每个线程不停地进行事务操作,打开事务,然后进行一些查询、更新、插入操作,提交事务,再开始新的事务;所有的sql只访问一个表-sbtest,是由sysbench的prepare命令建好的。其中的记录数,也是在prepare时指定好并创建的。测试结束,会有一个统计结果,包括例如每秒事务数、平均响应时间等等。
二、sysbench下载与安装
1.下载:使用epel源的bzr客户端下载sysbench(这里不做epel源配置说明)
[root yum.repos.d]$ yum install bzr -y
.....
.......
Running Transaction
Installing : python-paramiko-1.7.5-2.1.el6.noarch 1/2
Installing : bzr-2.1.1-2.el6.x86_64 2/2
Installed:
bzr.x86_64 0:2.1.1-2.el6
Dependency Installed:
python-paramiko.noarch 0:1.7.5-2.1.el6
Complete!
[root ~]$ bzr branch lp:sysbench You have not informed bzr of your Launchpad ID, and you must do this to write to Launchpad or access private data. See "bzr help launchpad-login". Branched 128 revision(s). [root ~]$ ll -d /root/sysbench/ drwxr-xr-x 7 root root 4096 11月 25 14:45 /root/sysbench/
2.安装sysbench
[root@localhost ~]#cd /root/sysbench [root@localhost sysbench]#./autogen.sh [root@localhost sysbench]#./configure --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib [root@localhost sysbench]#make
注意如果报错libmysqlclient.so.18说明的需要链接mysql的lib库:例如:ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/
三、性能测试与结果分析
原文:http://www.cnblogs.com/lf20151102/p/5001042.html