sysbench介绍
sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试。
数据库目前支持MySQL/Oracle/PostgreSQL。本文只是简单演示一下几种测试的用法,后续准备利用sysbench来对MySQL进行一系列的测试。具体的一些参数设置,需要根据不同的测试要求来进行调整。
安装

一、CentOS 7安装:  
1、首先:查找一下安装包,执行命令:yum search sysbench
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.cn99.com
 * epel: mirrors.aliyun.com
 * extras: ap.stykers.moe
 * updates: mirrors.neusoft.edu.cn
============================ N/S matched: sysbench =============================
sysbench.x86_64 : System performance benchmark  名称和简介匹配 only,使用“search all”试试。
2、其次:通过上述命令给出的安装包名称进行安装,执行命令:yum install sysbench.x86_64
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                     | 7.2 kB     00:00     
 * base: mirrors.cn99.com
 * epel: mirrors.yun-idc.com
 * extras: ap.stykers.moe
 * updates: mirrors.neusoft.edu.cn
base                                                     | 3.6 kB     00:00     
epel                                                     | 5.4 kB     00:00     
extras                                                   | 2.9 kB     00:00     
updates                                                  | 2.9 kB     00:00     
(1/2): epel/x86_64/updateinfo                              | 1.0 MB   00:00     
(2/2): epel/x86_64/primary_db                              | 6.8 MB   00:01     
正在解决依赖关系
--> 正在检查事务
---> 软件包 sysbench.x86_64.0.1.0.17-2.el7 将被 安装
--> 正在处理依赖关系 libck.so.0()(64bit),它被软件包 sysbench-1.0.17-2.el7.x86_64 需要
--> 正在处理依赖关系 libluajit-5.1.so.2()(64bit),它被软件包 sysbench-1.0.17-2.el7.x86_64 需要
--> 正在处理依赖关系 libpq.so.5()(64bit),它被软件包 sysbench-1.0.17-2.el7.x86_64 需要
--> 正在检查事务
---> 软件包 ck.x86_64.0.0.5.2-2.el7 将被 安装
---> 软件包 luajit.x86_64.0.2.0.4-3.el7 将被 安装
---> 软件包 postgresql-libs.x86_64.0.9.2.24-1.el7_5 将被 安装
--> 解决依赖关系完成依赖关系解决
================================================================================
 Package                架构          版本                    源           大小
================================================================================
正在安装:
 sysbench               x86_64        1.0.17-2.el7            epel        152 k
为依赖而安装:
 ck                     x86_64        0.5.2-2.el7             epel         26 k
 luajit                 x86_64        2.0.4-3.el7             epel        343 k
 postgresql-libs        x86_64        9.2.24-1.el7_5          base        234 k事务概要
================================================================================
安装  1 软件包 (+3 依赖软件包)总下载量:755 k
安装大小:2.3 M
Is this ok [y/d/N]: y
Downloading packages:
(1/4): ck-0.5.2-2.el7.x86_64.rpm                           |  26 kB   00:00     
(2/4): postgresql-libs-9.2.24-1.el7_5.x86_64.rpm           | 234 kB   00:00     
(3/4): luajit-2.0.4-3.el7.x86_64.rpm                       | 343 kB   00:01     
(4/4): sysbench-1.0.17-2.el7.x86_64.rpm                    | 152 kB   00:01     
--------------------------------------------------------------------------------
总计                                               482 kB/s | 755 kB  00:01     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : luajit-2.0.4-3.el7.x86_64                                   1/4 
  正在安装    : postgresql-libs-9.2.24-1.el7_5.x86_64                       2/4 
  正在安装    : ck-0.5.2-2.el7.x86_64                                       3/4 
  正在安装    : sysbench-1.0.17-2.el7.x86_64                                4/4 
  验证中      : ck-0.5.2-2.el7.x86_64                                       1/4 
  验证中      : postgresql-libs-9.2.24-1.el7_5.x86_64                       2/4 
  验证中      : sysbench-1.0.17-2.el7.x86_64                                3/4 
  验证中      : luajit-2.0.4-3.el7.x86_64                                   4/4 已安装:
  sysbench.x86_64 0:1.0.17-2.el7                                                作为依赖被安装:
  ck.x86_64 0:0.5.2-2.el7                      luajit.x86_64 0:2.0.4-3.el7     
  postgresql-libs.x86_64 0:9.2.24-1.el7_5     完毕!
3、最后:检查安装是否成功,执行命令:sysbench --help/sysbench -version
sysbench: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
发现报错了,意思就就是:sysbench:加载共享库时出错:libmysqlclient.so.18:无法打开共享对象文件:没有这样的文件或目录。原因一般有两个:
一个是操作系统里确实没有包含该共享库(lib*.so.*文件)或者共享库版本不对, 遇到这种情况那就去网上下载并安装上即可. 
另外一个原因就是已经安装了该共享库, 但执行需要调用该共享库的程序的时候, 程序按照默认共享库路径找不到该共享库文件. 
4、解决办法:
首先:在根目录中查找libmysqlclient.so.18文件,检查是否存在,执行命令:find / -name libmysqlclient.so.18,没有返回,发现没有改文件,证明没有安装共享数据库。
其次:安装数据库,执行命令:yum install -y mysql-devel
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.cn99.com
 * epel: mirrors.yun-idc.com
 * extras: ap.stykers.moe
 * updates: mirrors.neusoft.edu.cn
正在解决依赖关系
--> 正在检查事务
---> 软件包 mariadb-devel.x86_64.1.5.5.64-1.el7 将被 安装
--> 正在处理依赖关系 mariadb-libs(x86-64) = 1:5.5.64-1.el7,它被软件包 1:mariadb-devel-5.5.64-1.el7.x86_64 需要
--> 正在检查事务
---> 软件包 mariadb-libs.x86_64.1.5.5.60-1.el7_5 将被 升级
---> 软件包 mariadb-libs.x86_64.1.5.5.64-1.el7 将被 更新
--> 解决依赖关系完成依赖关系解决
============================================================================================================================================================
 Package                                  架构                              版本                                      源                               大小
============================================================================================================================================================
正在安装:
 mariadb-devel                            x86_64                            1:5.5.64-1.el7                            base                            755 k
为依赖而更新:
 mariadb-libs                             x86_64                            1:5.5.64-1.el7                            base                            759 k事务概要
============================================================================================================================================================
安装  1 软件包
升级           ( 1 依赖软件包)总下载量:1.5 M
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/2): mariadb-devel-5.5.64-1.el7.x86_64.rpm                                                                                         | 755 kB  00:00:00     
(2/2): mariadb-libs-5.5.64-1.el7.x86_64.rpm                                                                                          | 759 kB  00:00:01     
------------------------------------------------------------------------------------------------------------------------------------------------------------
总计                                                                                                                        1.1 MB/s | 1.5 MB  00:00:01     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在更新    : 1:mariadb-libs-5.5.64-1.el7.x86_64                                                                                                      1/3 
  正在安装    : 1:mariadb-devel-5.5.64-1.el7.x86_64                                                                                                     2/3 
  清理        : 1:mariadb-libs-5.5.60-1.el7_5.x86_64                                                                                                    3/3 
  验证中      : 1:mariadb-devel-5.5.64-1.el7.x86_64                                                                                                     1/3 
  验证中      : 1:mariadb-libs-5.5.64-1.el7.x86_64                                                                                                      2/3 
  验证中      : 1:mariadb-libs-5.5.60-1.el7_5.x86_64                                                                                                    3/3 已安装:
  mariadb-devel.x86_64 1:5.5.64-1.el7                                                                                                                       作为依赖被升级:
  mariadb-libs.x86_64 1:5.5.64-1.el7                                                                                                                        完毕!
执行命令:mysql_config -help
Usage: /usr/bin/mysql_config [OPTIONS]
Options:
        --cflags         [-I/usr/include/mysql]
        --include        [-I/usr/include/mysql]
        --libs           [-L/usr/lib64/mysql -lmysqlclient -lpthread -lz -lm -ldl -lssl -lcrypto]
        --libs_r         [-L/usr/lib64/mysql -lmysqlclient -lpthread -lz -lm -ldl -lssl -lcrypto]
        --plugindir      [/usr/lib64/mysql/plugin]
        --socket         [/var/lib/mysql/mysql.sock]
        --port           [0]
        --version        [5.5.64]
        --libmysqld-libs [-L/usr/lib64/mysql -lmysqld]
        --variable=VAR   VAR is one of:
                pkgincludedir [/usr/include/mysql]
                pkglibdir     [/usr/lib64/mysql]
                plugindir     [/usr/lib64/mysql/plugin]
[root@localhost ~]# mysql_config --include
-I/usr/include/mysql
执行命令:mysql_config --libs
-L/usr/lib64/mysql -lmysqlclient -lpthread -lz -lm -ldl -lssl -lcrypto5、再次验证,执行命令:sysbench -version
sysbench 1.0.17 (using system LuaJIT 2.0.4)二、CentOS 6.5安装:
1. 下载安装包:sysbench-1.0.zip,地址 https://github.com/akopytov/sysbench/archive/1.0.zip
上传至服务器目录:/usr/local/src/
执行:scp -r /Users/apple/Downloads/sysbench-1.0.zip root@IP·:/usr/local/src/
2. 安装依赖库
yum install automake libtool -y
3. 开始安装
./autogen.sh
./configure
ERROR: cannot find MySQL libraries. If you want to compile with MySQL support 没找到mysql库 需要用参数指定下 --with-mysql-includes和--with-mysql-libs
./configure --with-mysql-includes=/alidata/server/mysql5.7/include/ --with-mysql-libs=/alidata/server/mysql5.7/lib/
4. 由于是yum安装的mysql,我也不知道路径在哪里。如何查找mysql的安装路径?
安装mysql-devel,才能使用mysql_config
#yum install -y mysql-devel
#mysql_config -help
mysql_config --include
mysql_config --libs
5. 再次执行config,成功
./configure --with-mysql-includes=/usr/include/mysql --with-mysql-libs=/usr/lib/mysql
make
make install
6. 执行下命令:
sysbench --help