这里介绍一款MySQL数据库的压力测试软件sysbench,用它来进行基准测试。
sysbench 是一个开源的、模块化的、跨平台的多线程性能测试工具,
可以用来进行CPU、内存、磁盘I/O、线程、数据库的性能测试。
目前支持的数据库有MySQL、Oracle 和PostgreSQL。
#安装相关依赖
mount /dev/cdrom /mnt
yum -y install make automake libtool pkgconfig libaio-devel libtool
#安装过程开始
#客户端lib包做个链接 ln -sf /mysql/app/mysql/lib/libmysqlclient.so.20 /usr/lib/libmysqlclient.so.20 #解压安装 cd /soft tar zxvf sysbench-1.0.15.tar.gz cd sysbench-1.0.15 ./autogen.sh ./configure --prefix=/mysql/app/sysbench --with-mysql=/mysql/app/mysql --with-mysql-includes=/mysql/app/mysql/include/ #--with-mysql-libs=/usr/lib/ make && make install #配置环境变量 vi ~/.bash_profile PATH=$PATH:/mysql/app/sysbench/bin:$HOME/bin source ~/.bash_profile sysbench --version #如果提示报错 sysbench: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory #接着在/etc/ld.so.cnf中加入/usr/lib这一行 [root@tse01 local]# cat /etc/ld.so.conf include ld.so.conf.d/*.conf /usr/lib/ #执行ldconfig -v更新下配置就可以了
[root@tse01 local]# /sbin/ldconfig -v
#提示说明:
如果你在非标准位置安装的MySQL头文件和库(没有 mysql_config
可以在找到PATH
),
你可以明确指定--with-mysql-includes
和--with-mysql-libs
选项参数,如上面。
--without-mysql
。
选项
|
描述
|
默认值
|
--threads
|
要创建的工作线程总数
|
1个
|
--events
|
要求总数的限制。0(默认值)表示没有限制
|
0
|
--time
|
总执行时间限制(以秒为单位)。0表示没有限制
|
10
|
--warmup-time
|
在启用统计信息的情况下运行实际基准测试之前,在禁用统计信息的情况下执行事件数秒钟。当您要从统计信息中排除基准测试运行的初始期间时,此功能很有用。在许多基准测试中,初始阶段并不具有代表性,因为CPU /数据库/页面和其他缓存需要一些时间进行预热
|
0
|
--rate
|
平均交易率。该数字指定所有线程平均每秒应执行多少事件(事务)。0(默认)表示无限制速率,即事件以尽可能快的速度执行
|
0
|
--thread-init-timeout
|
辅助线程初始化的等待时间(以秒为单位)
|
30
|
--thread-stack-size
|
每个线程的堆栈大小
|
32K
|
--report-interval
|
定期以指定的时间间隔(以秒为单位)报告中间统计信息。请注意,此选项生成的统计信息是按时间间隔而不是累积的。0禁用中间报告
|
0
|
--debug
|
打印更多调试信息
|
离开
|
--validate
|
尽可能验证测试结果
|
离开
|
--help
|
根据常规语法或指定的测试打印帮助,然后退出
|
离开
|
--verbosity
|
详细级别(0-仅关键消息,5-调试)
|
4
|
--percentile
|
sysbench测量所有已处理请求的执行时间,以显示统计信息,例如最小,平均和最大执行时间。对于大多数基准测试,了解与某个百分位数相匹配的请求执行时间值也很有用(例如,95%百分位数意味着我们应该丢弃最长请求的5%,并从其余请求中选择最大值)。此选项允许指定要计算的查询执行时间的百分等级
|
95
|
--luajit-cmd
|
执行LuaJIT控制命令。此选项等效于luajit -j。有关更多信息,请参见LuaJIT文档。
|
原文:https://www.cnblogs.com/Sungeek/p/14669280.html