设为首页 收藏本站
查看: 430|回复: 0

[经验分享] mysql sysbench测试安装及命令

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-11-2 08:47:40 | 显示全部楼层 |阅读模式
一、安装sysbench

1.软件版本sysbench-0.4.12.7

2.编译安装
1)编译配置
# ./configure --with-mysql-includes=/opt/mysql/include/ --with-mysql-libs=/opt/mysql/lib/

2)编译
#make
....
....
/bin/sh ../libtool --tag=CC   --mode=link gcc -pthread -g -O2      -o sysbench sysbench.o sb_timer.o sb_options.o sb_logger.o db_driver.o tests/fileio/libsbfileio.a tests/threads/libsbthreads.a tests/memory/libsbmemory.a tests/cpu/libsbcpu.a tests/oltp/libsboltp.a tests/mutex/libsbmutex.a drivers/mysql/libsbmysql.a -L/opt/mysql/lib/ -lmysqlclient_r   -lrt -lm
libtool: link: gcc -pthread -g -O2 -o sysbench sysbench.o sb_timer.o sb_options.o sb_logger.o db_driver.o  tests/fileio/libsbfileio.a tests/threads/libsbthreads.a tests/memory/libsbmemory.a tests/cpu/libsbcpu.a tests/oltp/libsboltp.a tests/mutex/libsbmutex.a drivers/mysql/libsbmysql.a -L/opt/mysql/lib/ -lmysqlclient_r -lrt -lm -pthread
make[2]: Leaving directory `/home/soft/sysbench-0.4.12.7/sysbench'
make[1]: Leaving directory `/home/soft/sysbench-0.4.12.7/sysbench'
make[1]: Entering directory `/home/soft/sysbench-0.4.12.7'
make[1]: Nothing to be done for `all-am'.
make[1]: Leaving directory `/home/soft/sysbench-0.4.12.7'
[iyunv@mdb01 sysbench-0.4.12.7]#

3)安装
#make install

sysbench默认安装到/usr/loca/bin

4)安装问题:
1.make 错误:
libtool: link: gcc -pthread -g -O2 -o sysbench sysbench.o sb_timer.o sb_options.o sb_logger.o db_driver.o  tests/fileio/libsbfileio.a tests/threads/libsbthreads.a tests/memory/libsbmemory.a tests/cpu/libsbcpu.a tests/oltp/libsboltp.a tests/mutex/libsbmutex.a drivers/mysql/libsbmysql.a -L/opt/mysql/lib/ -lmysqlclient_r -lrt -lm -pthread
/usr/bin/ld: cannot find -lmysqlclient_r
collect2: ld returned 1 exit status
make[2]: *** [sysbench] Error 1
make[2]: Leaving directory `/home/soft/sysbench-0.4.12.7/sysbench'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/soft/sysbench-0.4.12.7/sysbench'
make: *** [all-recursive] Error 1
[iyunv@mdb01 sysbench-0.4.12.7]#

解决办法:

默认查找libmysqlclient_r.so,可是mysql默认为libmysqlclient.so,内容完全一样,做个链接即可

# ln -s libmysqlclient.so.20.0.9 libmysqlclient_r.so


5)设置环境变量
解决sysbench --help无法找到MySQL LIB库的问题
vi /etc/profile
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/mysql/lib


二、测试

1.建立测试库

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> create database test
    -> ;
Query OK, 1 row affected (0.18 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
5 rows in set (0.08 sec)

mysql>


开始测试

2.准备测试表
1)预备命令
[iyunv@mdb01 ~]# sysbench --test=oltp --mysql-table-engine=innodb --oltp-table-size=100000 --mysql-socket=/opt/mysql/mysql.sock --mysql-db=test --mysql-user=root --mysql-host=127.0.0.1 --mysql-password=123456 prepare
sysbench 0.4.13:  multi-threaded system evaluation benchmark

No DB drivers specified, using mysql
Creating table 'sbtest'...
Creating 100000 records in table 'sbtest'...
[iyunv@mdb01 ~]#
2)数据库命令建立的测试表
mysql> use test;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| sbtest         |
+----------------+
1 row in set (0.01 sec)

mysql> desc sbtest;
+-------+------------------+------+-----+---------+----------------+
| Field | Type             | Null | Key | Default | Extra          |
+-------+------------------+------+-----+---------+----------------+
| id    | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| k     | int(10) unsigned | NO   | MUL | 0       |                |
| c     | char(120)        | NO   |     |         |                |
| pad   | char(60)         | NO   |     |         |                |
+-------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

mysql> select count(*) from sbtest;
+----------+
| count(*) |
+----------+
|   100000 |
+----------+
1 row in set (0.05 sec)

mysql>

3.运行测试

[iyunv@mdb01 ~]# sysbench --num-threads=8 --max-requests=10000 --test=oltp --mysql-table-engine=innodb --oltp-table-size=100000 --mysql-socket=/opt/mysql/mysql.sock --mysql-db=test --mysql-user=root --mysql-host=127.0.0.1 --mysql-password=123456 run
sysbench 0.4.13:  multi-threaded system evaluation benchmark

No DB drivers specified, using mysql
Running the test with following options:
Number of threads: 8
Random number generator seed is 0 and will be ignored


Doing OLTP test.
Running mixed OLTP test
Using Special distribution (12 iterations,  1 pct of values are returned in 75 pct cases)
Using "BEGIN" for starting transactions
Using auto_inc on the id column
Maximum number of requests for OLTP test is limited to 10000
Using 1 test tables
Threads started!
Done.


OLTP test statistics:
    queries performed:
        read:                            140098
        write:                           50012
        other:                           20007
        total:                           210117
    transactions:                        10000  (163.72 per sec.)
    deadlocks:                           7      (0.11 per sec.)
    read/write requests:                 190110 (3112.41 per sec.)
    other operations:                    20007  (327.55 per sec.)

Test execution summary:
    total time:                          61.0813s
    total number of events:              10000
    total time taken by event execution: 488.3863
    per-request statistics:
         min:                                 18.94ms
         avg:                                 48.84ms
         max:                                336.99ms
         approx.  95 percentile:              62.45ms

Threads fairness:
    events (avg/stddev):           1250.0000/2.78
    execution time (avg/stddev):   61.0483/0.01

[iyunv@mdb01 ~]#



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-133824-1-1.html 上篇帖子: mysql读写分离的实现之amoeba 下篇帖子: 【MySQL】MySQL-python my_config.h mysql
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表