Sysbench性能测试
传送门:
Sysbench性能测试(一): sysbench简介与安装
Sysbench性能测试(二): sysbench基本使用和CPU性能测试
Sysbench性能测试(三): 内存性能测试
Sysbench性能测试(四): 文件I/O性能测试
Sysbench性能测试(五): 数据库性能测试
1 sysbench简介
sysbench是一个模块化的、跨平台的多线程性能测试工具,它最常用于数据库基准测试,但也可用于创建不涉及数据库服务器的复杂工作负载,如CPU、内存、磁盘I/O、线程以及互斥锁的性能测试。sysbench是基于LuaJIT的可编写脚本的多线程基准测试工具。本文所用sysbench版本为1.0.20。
sysbench支持如下的基准测试:
- CPU性能测试
- 文件I/O性能测试
- 内存性能测试
- 数据库性能测试
- 线程子系统性能测试
- 互斥锁性能测试
2 sysbench安装
2-1 源码链接
https://github.com/akopytov/sysbench //源码可在github下载
2-2 安装过程
- 下载软件包,并解压
- 检查是否满足安装所需依赖:make、automake、libtool、pkgconfig、libaio-devel、vim-common
- 进入到sysbench源码目录,执行autogen.sh生成configure文件
cd sysbench-1.0 ./autogen.sh
- 执行configure
如果mysql为标准安装,可以直接运行configue,否则需要在配置文件中指定如下参数:./configure --with-mysql --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib
- with-mysql-includes路径为mysql.h 文件所在目录,可通过find / -name mysql.h查找
- with-mysql-libs路径为libmysqlclient.so 所在目录,可通过find / -name libmysqlclient.so查找
- 执行 make && make install
make make install
- 测试是否安装成功
安装成功后,所有sysbench自带的压测lua脚本都可以在sysbench --version
目录下找到。/usr/local/share/sysbench
2-3 安装过程可能的错误
- 执行完2-2中第五步后,运行
出现错误:sysbench --version
解决方法:[[email protected] ~]# sysbench --version /usr/local/sysbench/bin/sysbench: error while loading shared libraries: libmysqlclient.so.21: cannot open shared object file: No such file or directory
- 检查动态链接库是否存在
libmysqlclient.so.21
[[email protected] ~]# ldconfig -p| grep mysql libmysqlclient.so.18 (libc6,AArch64) => /usr/lib64/mysql/libmysqlclient.so.18
- 不存在,则创建软连接并刷新动态链接库
[[email protected] ~]# ln -s /usr/local/mysql/lib/libmysqlclient.so.21 /usr/lib/ [[email protected] ~]# ldconfig
- 再次检查动态链接库
[[email protected] ~]# ldconfig -p| grep mysql libmysqlclient.so.21 (libc6,AArch64) => /lib/libmysqlclient.so.21 libmysqlclient.so.18 (libc6,AArch64) => /usr/lib64/mysql/libmysqlclient.so.18
- 此时运行
成功sysbench --version
[[email protected] ~]# sysbench --version sysbench 1.0.20
- 检查动态链接库是否存在