码迷,mamicode.com
首页 > 数据库 > 详细

Sysbench0.5测试数据库性能

时间:2016-01-18 21:02:27      阅读:361      评论:0      收藏:0      [点我收藏+]

标签:sysbench测试数据库性能

一、sysbench介绍
SysBench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。它主要包括以下几种方式的测试:
1、cpu性能
2、磁盘io性能
3、调度程序性能
4、内存分配及传输速度
5、POSIX线程性能
6、数据库性能(OLTP基准测试

目前sysbench主要支持MySQL,pgsql,Oracle等数据库。
最早的官网 http://sysbench.sourceforge.net      已经不可用
项目地址: https://launchpad.net/sysbench       还可以用
最新的地址 https://github.com/akopytov/sysbench

二、sysbench 安装

默认支持mysql 如果需要测试Oracle/PostgreSQL,则在configure时需要加上-with-oracle或者-with-pgsql参数,

1、下载源码,然后自己编译安装

安装库yum install autoconf automake libtool

tar-xzvf sysbench-0.5.tar.gz
cd sysbench
chmod +x autogen.sh
./autogen.sh 
./configure --with-mysql --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/var/lib64/mysql 
make 
make install

注意:
--with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/var/lib64/mysql(32位系统lib64位系统lib64)  这两个目录根据实际系统情况指定。

2、查询sysbench是否正确安装 sysbench -v

三、MySQL 数据库测试

sysbench 0.5通过一系列LUA脚本来替换之前的oltp,来模拟更接近真实的基准测试环境。这些测试脚本包含:insert.lua、oltp.lua、parallel_prepare.lua、select_random_points.lua

、update_index.lua、delete.luaoltp_simple.lua、select.lua、select_random_ranges.lua、update_non_index.lua,脚本使用方式基本类似

sysbench 0.5默认使用sbtest库,但是需要自己手工先创建好,也可以使用--mysql-db指定,其他非默认项指定选项:

-mysql-host
-mysql-port
-mysql-socket
-mysql-user
-mysql-password
-mysql-db
-mysql-ssl
prepare

参数解读:

–db-driver              #服务器类型mysql | drizzle,默认为mysql
–mysql-table-engine     #表存数引擎
–myisam-max-rows        #MyISAM表MAX_ROWS选项(用于大表)
–oltp-table-count=10    #生成表数量[sbtest1、sbtest2...]
–oltp-table-size=100000 #生成表的行数 
–oltp-secondary         #ID列生成二级索引而不是主键
–oltp-auto-inc          #设置ID列是否自增on | off,默认为on
–oltp-read-only=on      #表示进行只读测试
–rand-init=on           #表示每个测试表都是用随机数据来填充的
–report-interval=1      #每1秒打印一次当前的QPS等值
–num-threads=8          #表示发起 8个并发连接
–max-time=120           #表示最大执行时长为 120秒
–percentile=99          #表示设定采样比例,默认是 95%,即丢弃1%的长请求,在剩余的99%里取最大值

初步测试,首先创建表

sysbench --mysql-host=localhost --mysql-port=3306 --mysql-user=root --mysql-password=222222 --mysql-db=test --oltp-tables-count=10 --oltp-table-size=600000 --num-threads=50 --max-requests=100000000 --max-time=20 --report-interval=1 --rand-init=on --test=/usr/local/src/sysbench/sysbench/tests/db/oltp.lua prepare

开始测试:

sysbench --mysql-host=localhost --mysql-port=3306 --mysql-user=root --mysql-password=222222 --mysql-db=test --oltp-tables-count=10 --oltp-table-size=600000 --num-threads=50 --max-requests=100000000 --max-time=20 --report-interval=1 --rand-init=on --test=/usr/local/src/sysbench/sysbench/tests/db/oltp.lua run

技术分享

清除测试数据:

sysbench --mysql-host=localhost --mysql-port=3306 --mysql-user=root --mysql-password=222222 --mysql-db=test --oltp-tables-count=10 --oltp-table-size=600000 --num-threads=50 --max-requests=100000000 --max-time=20 --report-interval=1 --rand-init=on --test=/usr/local/src/sysbench/sysbench/tests/db/oltp.lua cleanup

参考:https://www.percona.com/docs/wiki/benchmark:sysbench:olpt.lua

本文出自 “59090939” 博客,请务必保留此出处http://59090939.blog.51cto.com/6338052/1736194

Sysbench0.5测试数据库性能

标签:sysbench测试数据库性能

原文地址:http://59090939.blog.51cto.com/6338052/1736194

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!