当前位置:  数据库>mysql

数据库工具sysbench安装教程和性能测试例子

    来源: 互联网  发布时间:2014-10-16

    本文导语:  sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。关于这个项目的详细介绍请看:http://sysbench.sourceforge.net。 它主要包括以下几种方式的测试: 1、cpu性能 2、磁...

sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。关于这个项目的详细介绍请看:http://sysbench.sourceforge.net

它主要包括以下几种方式的测试:
1、cpu性能
2、磁盘io性能
3、调度程序性能
4、内存分配及传输速度
5、POSIX线程性能
6、数据库性能(OLTP基准测试)
目前sysbench主要支持 MySQL,pgsql,oracle 这3种数据库。

一、安装

首先,在 一次SQL调优数据库性能问题后的过程(300W) iis7站长之家 下载源码包。
接下来,按照以下步骤安装:

代码如下:

tar zxf sysbench-0.4.8.tar.gz
cd sysbench-0.4.8
./configure && make && make install
strip /usr/local/bin/sysbench

以上方法适用于 MySQL 安装在标准默认目录下的情况,如果 MySQL 并不是安装在标准目录下的话,那么就需要自己指定 MySQL 的路径了。比如我的 MySQL 喜欢自己安装在 /usr/local/mysql 下,则按照以下方法编译:

代码如下:

/configure --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 支持的表存储引擎类型。

好了,主要的就是这些了,想要了解更多信息就访问 sysbench 项目的主页吧。


    
 
 

您可能感兴趣的文章:

  • 请问谁有Applet连接远程Access数据库并且显示数据库内容的例子!
  • jsp显示server数据库的内容,如何实现定时更新,给一段代码例子吧,谢谢
  • >>>>>>>>>>>>>>>急:高分求struts操作数据库表的例子
  • c#连接sqlserver数据库的例子
  • 如何实现在java界面程序中向数据库添加记录,能不能给你例子??
  • 关于数据库联结的例子 谁有 JTurbo的。
  • 请问applet如何通过javabean访问数据库?给个例子,谢谢
  • 使用bin-log日志还原数据库的例子
  • 谁有关于读取数据库中所有表的名字、字段名的例子?
  • 有谁在linux下用c++读mysql数据库啊!有没有例子让小弟参考啊!急!!!!
  • 怎么在linux上用c程序调用mysql数据库,可以给一段例子么?
  • 谁能给出一个QT连接数据库(MySQL)的完整的例子,感激不尽,100分相赠。
  • 我是菜鸟,想要个oracle数据库操作 的例子
  • 用t-sql语句完整备份数据库的例子
  • vb.net使用DataGrid控件访问数据库的例子
  • 我需要JAVA-JDBC打开数据库的例子....................
  • 求一个使用tcp协议传送类似数据库表的二维数组的例子。每条记录上的字段数据类型不一定一样。
  • sql server 数据库分页查询的例子
  • 我的小例子为什么连不上数据库?
  • 能不能将对象序列化后存到数据库再取出还原?有没有例子?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Oracle收购TimesTen 提高数据库软件性能
  • 数据库性能测试工具 PolePosition
  • 数据库性能测试工具 DBT
  • 开源数据库性能测试工具 osdb
  • 关于提高Oracle数据库性能的四个错误认识
  • XML数据库性能测试 TPoX
  • 高性能内存数据库网格 Galaxy
  • 超高性能 key-value 数据库 Redis
  • 高性能 NoSQL 数据库 ArangoDB
  • 校园网,www服务器,邮件服务器,数据库服务器等各用什么平台(系统)性能最佳?
  • 高性能NoSQL数据库 SSDB
  • 数据库复制性能测试 推送模式性能测试
  • SQL Server误区30日谈 第9天 数据库文件收缩不会影响性能
  • 一次SQL调优数据库性能问题后的过程(300W)
  • 数据库中identity字段不必是系统产生的唯一值 性能优化方法(新招)
  • 数据库性能优化二:数据库表优化提升性能
  • 数据库性能优化三:程序操作优化提升性能
  • 看了半本,是关于java与xml编程的书,它用xml来代替数据库,试问,xml真的能开题数据库吗?(在性能方面)
  • 我实现了个J2EE技术的服务器,支持TCP、UDP和数据库,由于性能的原因,需要改为C或C++实现,我是C、C++新手,我该如何入手呢?看什么样的
  • 数据库性能基准测试 DB-Webbench
  • 基于Key-Value的NOSQL数据库Redis的数据结构及常用相关命令介绍
  • 如何监控数据库的数据,如果数据库数据更改,就通知Server
  • SQL Server 2008如何进行数据库分离和附加详细介绍
  • 散分:Jbuilder6开发数据库应用请问你们都用什么数据库? 免费的数据库有那些?
  • 文档数据库mongodb与列式数据库hbase详细比较
  • 如何从数据库中或文本文件中提取数据到另一个数据库中?
  • nosql数据库levedb介绍及levedb最新版1.18下载安装
  • 用JDBC连接Oracle数据库时,如何向数据库中写日期型数据(格式)?谢了!
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 开发java下的数据库程序,用什么数据库引擎?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3