当前位置: 首页 > 工具软件 > SysBench > 使用案例 >

Sysbench性能测试(一):sysbench简介与安装

冉丰茂
2023-12-01

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 安装过程
  1. 下载软件包,并解压

  2. 检查是否满足安装所需依赖:make、automake、libtool、pkgconfig、libaio-devel、vim-common

  3. 进入到sysbench源码目录,执行autogen.sh生成configure文件

    cd sysbench-1.0
    ./autogen.sh
    
  4. 执行configure

    ./configure --with-mysql --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib
    

    如果mysql为标准安装,可以直接运行configue,否则需要在配置文件中指定如下参数:

    • with-mysql-includes路径为mysql.h 文件所在目录,可通过find / -name mysql.h查找
    • with-mysql-libs路径为libmysqlclient.so 所在目录,可通过find / -name libmysqlclient.so查找
  5. 执行 make && make install

    make
    make install
    
  6. 测试是否安装成功

    sysbench --version
    

    安装成功后,所有sysbench自带的压测lua脚本都可以在/usr/local/share/sysbench目录下找到。

2-3 安装过程可能的错误
  1. 执行完2-2中第五步后,运行sysbench --version出现错误:

    [root@localhost ~]# 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

      [root@localhost ~]# ldconfig -p| grep mysql
      	libmysqlclient.so.18 (libc6,AArch64) => /usr/lib64/mysql/libmysqlclient.so.18
      
    • 不存在,则创建软连接并刷新动态链接库

      [root@localhost ~]# ln -s /usr/local/mysql/lib/libmysqlclient.so.21 /usr/lib/
      [root@localhost ~]# ldconfig
      
    • 再次检查动态链接库

      [root@localhost ~]# 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成功

      [root@localhost ~]# sysbench --version
      sysbench 1.0.20
      
 类似资料: