sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。关于这个项目的详细介绍请看:http://sysbench.sourceforge.net。
它主要包括以下几种方式的测试:
1、cpu性能
2、磁盘io性能
3、调度程序性能
4、内存分配及传输速度
5、POSIX线程性能
6、数据库性能(OLTP基准测试)
目前sysbench主要支持 MySQL,pgsql,oracle 这3种数据库
环境准备
我的系统是Centos5.3
首先,安装 更新 gcc,否则在编译安装时会报错误:configure: error: no acceptable C compiler found in $PATH ,安装命令:yum install gcc
安装libtool ,否则报错
../libtool: line 838: X--tag=CC: command not found
../libtool: line 871: libtool: ignoring unknown tag : command not found
../libtool: line 838: X--mode=link: command not found
../libtool: line 1004: *** Warning: inferring the mode of operation is deprecated.: command not found
../libtool: line 1005: *** Future versions of Libtool will require --mode=MODE be specified.: command not found
../libtool: line 2231: X-g: command not found
../libtool: line 2231: X-O2: command not found
../libtool: line 1951: X-L/usr/local/mysql/lib: No such file or directory
../libtool: line 2400: Xsysbench: command not found
Fatal server error:
Server is already active for display 0
If this server is no longer running, remove /tmp/.X0-lock
and start again.
../libtool: line 2412: Xsysbench: command not found
../libtool: line 2547: X-lmysqlclient_r: command not found
../libtool: line 2547: X-lrt: command not found
../libtool: line 2547: X-lm: command not found
../libtool: line 2629: X-L/usr/temp/sysbench-0.4.12/sysbench: No such file or directory
../libtool: line 2547: X-lmysqlclient_r: command not found
../libtool: line 2547: X-lrt: command not found
../libtool: line 2547: X-lm: command not found
../libtool: line 2629: X-L/usr/temp/sysbench-0.4.12/sysbench: No such file or directory
../libtool: line 2547: X-lmysqlclient_r: command not found
../libtool: line 2547: X-lrt: command not found
安装命令:yum install libtool
一、安装
更新yum install gcc libtool
在 http://sourceforge.net/projects/sysbench 下载源码包。
接下来,按照以下步骤安装:
tar zxf sysbench-0.4.12.tar.gz cd sysbench-0.4.12 ./autogen.sh //对环境的清理,该操作只有0.4.12版本有,如果不执行则会报上面错误 ./configure && make && make install strip /usr/local/bin/sysbench
以上方法适用于 MySQL 安装在标准默认目录下的情况,如果 MySQL 并不是安装在标准目录下的话,那么就需要自己指定 MySQL 的路径了。比如我的 MySQL 安装在 /usr/local/mysql 下,则按照以下方法编译:
/configure --prefix=/usr/local/sysbench --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib && make && make install
当然了,用上面的参数编译的话,就要确保你的 MySQL lib目录下有对应的 so 文件,如果没有,可以自己下载 devel 或者 share 包来安装。
另外,如果想要让 sysbench 支持 pgsql/oracle 的话,就需要在编译的时候加上参数
--with-pgsql或者--with-oracle 这2个参数默认是关闭的,只有 MySQL 是默认支持的。
二、开始测试
编译成功之后,就要开始测试各种性能了,测试的方法官网网站上也提到一些,但涉及到 OLTP 测试的部分却不够准确。在这里我大致提一下:
1、cpu性能测试
sysbench --test=cpu --cpu-max-prime=20000 run
cpu测试主要是进行素数的加法运算,在上面的例子中,指定了最大的素数为 20000,自己可以根据机器cpu的性能来适当调整数值。
2、线程测试
sysbench --test=threads --num-threads=64 --thread-yields=100 --thread-locks=2 run
3、磁盘IO性能测试
sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw prepare sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw run sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw cleanup
上述参数指定了最大创建16个线程,创建的文件总大小为3G,文件读写模式为随机读。
4、内存测试
sysbench --test=memory --memory-block-size=8k --memory-total-size=4G run
上述参数指定了本次测试整个过程是在内存中传输 4G 的数据量,每个 block 大小为 8K。
5、OLTP测试
sysbench --test=oltp --mysql-table-engine=myisam --oltp-table-size=1000000 \ --mysql-socket=/tmp/mysql.sock --mysql-user=test --mysql-host=localhost \ --mysql-password=test prepare
上述参数指定了本次测试的表存储引擎类型为 myisam,这里需要注意的是,官方网站上的参数有一处有误,即 --mysql-table-engine,官方网站上写的是 --mysql-table-type,这个应该是没有及时更新导致的。另外,指定了表最大记录数为 1000000,其他参数就很好理解了,主要是指定登录方式。测试 OLTP 时,可以自己先创建数据库 sbtest,或者自己用参数 --mysql-db 来指定其他数据库。--mysql-table-engine 还可以指定为 innodb 等 MySQL 支持的表存储引擎类型。
参考:http://imysql.cn/node/312
相关推荐
Sysbench是一款开源的多线程性能测试工具,广泛用于评估Linux系统的CPU、内存、I/O等子系统的性能。本文将详细介绍sysbench-1.0.18的下载、安装过程,以及如何编写和执行测试脚本来进行性能评估。 首先,我们需要...
mysql-sysbench测试 mysql-sysbench测试是指使用sysbench工具对mysql数据库进行...mysql-sysbench测试可以帮助我们更好地了解mysql数据库的性能,并且可以根据实际情况选择不同的测试场景和参数来模拟不同的负载场景。
综上所述,Sysbench是MySQL DBA进行系统性能测试的重要工具。通过熟练掌握其安装、配置、使用和结果分析,能够有效地提升数据库性能并确保系统的稳定运行。参考提供的PDF文档,可以更深入地学习Sysbench的高级功能和...
它支持多种操作系统平台,包括Linux、Unix等,并且能够模拟各种工作负载进行性能测试。 #### 二、Sysbench的安装过程 ##### 2.1 下载Sysbench 首先需要下载Sysbench的源码包。假设已经下载了`sysbench-0.5.tar.gz...
sysbench是一款开源的、跨平台的系统性能测试工具,广泛用于评估Linux系统的CPU、内存、磁盘I/O以及数据库等组件的性能。sysbench-0.4.12是其在2012年发布的一个版本,它提供了丰富的测试场景和参数,使得用户能够...
它需要编译安装,并通过设置不同的参数来获取关于CPU计算能力、文件I/O能力、OLTP能力等多种性能指标的真实测试结果。 - **测试环境说明**: - 扬州机房现运行生产环境:内网IP为172.168.234.31,MySQL版本为...
sysbench 0.5是该工具的一个特定版本,提供了更稳定和优化的性能测试功能。在本文中,我们将深入探讨sysbench 0.5的特性、安装过程、使用方法以及如何通过它来衡量和优化系统性能。 **一、sysbench 0.5的特性** 1....
总的来说,sysbench是一个功能全面的系统性能测试工具,能够帮助系统管理员和开发人员深入理解其系统的性能瓶颈和优化潜力。通过sysbench-0.4.12.14这个版本,用户可以获得一套稳定且经过验证的测试框架,从而更准确...
总之,`sysbench`是一个强大的性能测试工具,通过它可以深入理解系统在不同工作负载下的表现,为优化和调试提供关键数据。使用时,应根据具体需求调整参数,并结合`test.sh`脚本进行自动化测试,以获取详尽的性能...
**sysbench**是一款开源的、跨平台的系统性能测试和基准测试工具,广泛应用于Linux环境,用于评估数据库、CPU、磁盘I/O等系统的性能。它由Anton Lipov开发,支持多种数据库引擎,包括MySQL、PostgreSQL和Oracle。...
sysbench是一款广泛使用的开源性能测试工具,主要用于评估和优化Linux系统的CPU、内存、磁盘I/O等硬件资源以及数据库系统的性能。sysbench-0.5是sysbench的一个较早版本,尽管如此,它仍然包含了丰富的功能和测试...
本文将详细介绍如何利用Linux下的工具进行磁盘I/O性能测试,以及如何编译和运行源码来实现图形化界面测试。 一、Linux中的磁盘I/O性能测试工具 1. **iostat**:这是Unix-like系统中的一个实用程序,用于报告CPU...
1. **sysbench介绍**:sysbench是由Antonin Houska开发的一款强大的性能测试工具,它可以用来做系统压力测试、CPU基准测试、内存性能测试、磁盘IO性能测试,以及数据库的OLTP(在线事务处理)性能测试。 2. **版本...
安装完成后,sysbench主要的可执行文件是`/usr/bin/sysbench`,同时还有一系列的lua脚本位于`/usr/share/sysbench`目录下,这些lua脚本用于数据库性能测试的各种场景。 sysbench的lua脚本提供了多种在线事务处理...
linux性能测试工具-sysbench使用方法,可以mysql读写性能
`sysbench` 是一个强大的多线程...总的来说,`sysbench` 是一个强大的系统性能测试工具,对于监控和优化Linux服务器的性能非常有用。通过理解和熟练使用`sysbench`,你可以更有效地评估系统性能,并针对性地进行调优。
`sysbench`是一款开源的系统性能基准测试工具,主要用于评估和测试Linux系统的各种性能指标,包括CPU、内存、磁盘I/O以及数据库等。在本文中,我们将详细探讨`sysbench 1.0.17`这个版本的相关知识点,帮助你理解和...
mysql官方基准测试工具,内含linux6.x版本和linux7.x版本的安装tar包,另附详细的安装说明和sysbench的使用说明,包括详尽的测试参数说明和性能测试方式说明,sysbench版本为1.0.8