这篇文章主要介绍sysbench 0.5有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
一 前言
因为在准备做压力测试方面的工作,看到sysbench目前最新的版本是0.5 ,相比之前的0.4的版本,最大的变化是试验参数的改变,在压测关系型数据库时,新版本中试验将取值为左上臂脚本,该种方式给压测工作带来很大的灵活性二 安装
因为之前的博文中讲述过如何安装sysbench故本文不做过多讲解,不过需要提示请确保当前系统中是否安装m4 autoconf automake libtool这几个包,
如果没有则通过M4汽车会议汽车制造图书馆工具安装
获取sysbench然后安装。/autogen.sh。/configure-prefix=/opt/sysbench-with-MySQL-with-MySQL-includes=/opt/MySQL/include-with-MySQL-libs=/usr/lib 64/MySQL
制作和安装安装完成之后执行sysbench -帮助查看完整的帮助。
安装完成之后执行sysbench -帮助查看完整的帮助三使用
之前0.5 版本试验值是左上臂脚本,检查一下压测可以使用那些脚本
[root @ rac4 11:32:45 ~/sysbench/sysbench/tests/db]
# ls * .左上臂
常见。Lua插入。Lua OLTP _ simple。Lua选择。Lua select _ random _ ranges。Lua更新_非索引。左上臂
删除。Lua OLTP。Lua并行_准备。Lua选择_随机_点。Lua update _ index。左上臂
看看大家压测的时候用到的最典型的脚本
[root @ rac4 11:36:32 ~/sysbench/sysbench/tests/db]
# more update_non_index.lua
pathtest=string.match(test,'(.*/)')或''
dofile(路径测试.common.lua ')
函数thread_init(线程_id)
set_vars()
结束
函数事件(线程id)
本地表名
本地c_val
本地查询
table_name='sbtest '.sb_rand_uniform(1,oltp_tables_count)
c _ val=sb _ rand _ str(' # # # # # # # # #-# # # # # # #-# # # # # # # # # # #-# # # # # # # # # # #-# # # # # # # # # #-# # # # # #-# # # # # # # # # # # # # # # # # #-# # # # # # # # # # # # # # # # #-# # # # # # # # #
查询='更新'.表名.SET c=' '.c_val.' ' WHERE id='.sb_rand(1,oltp_table_size)
rs=db_query(查询)
结束
如果大家会左上臂脚本,则可以根据自己的业务场景,简单的定制化压测脚本。
cd /root/sysbench/
/opt/sysbecn/bin/sysbench-test=./sysbench/tests/db/update _ non _ index。Lua-MySQL-table-engine=innodb-MySQL-db=test-OLTP-table-size=5000000-MySQL-user=root-MySQL-socket=/SRV/my 3308/run/MySQL。sock-OLTP-tables-计数=16准备
/opt/sysbecn/bin/sysbench-test=./sysbench/tests/db/update _ non _ index。Lua-MySQL-table-engine=innodb-MySQL-db=test-OLTP-table-size=5000000-MySQL-user=root-MySQL-socket=/SRV/my 3308/run/MySQL。sock-OLTP-tables-count=16次运行
/opt/sysbecn/bin/sysbench-test=./sysbench/tests/db/update _ non _ index。Lua-MySQL-table-engine=innodb-MySQL-db=test-OLTP-table-size=5000000-MySQL-user=root-MySQL-socket=/SRV/my 3308/run/MySQL。sock-OLTP-tables-计数=16清理
四 遇到的问题
# ./autogen.sh
未找到libtoolize 1.4,正在退出
# ./autogen.sh
未找到automake 1.10.x(本地),正在退出
说明需要安装汽车制造商libtool的安装包
安装完上述几个包之后,我还遇到了如下错误:
libtool : link : gcc-W-Wall-Wextra-Wpointer-arith-Wbad-function-cast-Wstract-prototypes-owned-externs-Winline-funroll-loops-Wundef-Wstract-prototypes-Wmissing-Wmissing-decls-Wcast-align-pthread-O2-ggdb 3-o sysbench。o sb _ timer。o sb _ options。o sb _ logger。o db _ db
/usr/bin/ld:找不到-lmysqlclient_r
collect2: ld返回一退出状态
原因是因为自己当前环境中没有安装mysql-devel导致没有libmysqlclient_r.so.16。解决方法
yum install-y MySQL-dev
以上就是《sysbench 0.5有什么用》一文的全部内容,感谢阅读!希望分享的内容对大家有帮助。更多相关知识,请关注行业资讯频道!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/75764.html