加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL压力测试中怎样定制sysbench的Lua模板

发布时间:2021-12-20 13:33:07 所属栏目:MySql教程 来源:互联网
导读:本篇内容介绍了MySQL压力测试中如何定制sysbench的Lua模板的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 压力测试前,我们配置一下环境,创建一个
本篇内容介绍了“MySQL压力测试中如何定制sysbench的Lua模板”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
 
压力测试前,我们配置一下环境,创建一个用户和数据库。
 
mysql> create user sysbench_test identified by 'mysql';
 
Query OK, 0 rows affected (0.08 sec)
 
mysql> create database sysbench_db character set utf8;
 
Query OK, 1 row affected (0.08 sec)
 
mysql> grant all on sysbench_db.* to sysbench_test@'%';
 
Query OK, 0 rows affected (0.00 sec)
 
然后配置一个最简单的Lua模板,内容如下:
 
#!/usr/bin/env sysbench
 
function event()
 
db_query(
 
"SELECT 1"
 
)
 
end
 
运行的时候,配置执行权限,chmod +x test1.lua,然后执行
 
./test1.lua --mysql-user=sysbench_test --mysql-password=mysql --mysql-host=127.0.0.1 --mysql-port=65535 --mysql-db=sysbench_db run
 
其中参数--mysql-user=sysbench_test --mysql-password=mysql --mysql-host=127.0.0.1 --mysql-port=65535是为了连接,如果你是使用3306端口的默认配置命令就更简单了,输出如下:
 
MySQL压力测试中如何定制sysbench的Lua模板
 
此外我们还可以验证命令选项。我们推出第2个Lua模板 test2.lua
 
sysbench.cmdline.options = {
 
tables = {"Number of tables", 1},
 
table_size = {"Number of rows per table", 10000},
 
create_secondary = {"Create a secondary key", true}
 
}
 
如果命令选项不对,会检查出来。
 
sysbench --tbales=8 test2.lua --mysql-user=sysbench_test --mysql-password=mysql --mysql-host=127.0.0.1 --mysql-port=65535 --mysql-db=sysbench_db run
 
invalid option: --tbales=8
 
如果没有问题,则可以使用help来得到初始化后的选项值。
 
# sysbench test2.lua help
 
sysbench 1.0.3 (using bundled LuaJIT 2.1.0-beta2)
 
test2.lua options:
 
--table_size=N Number of rows per table [10000]
 
--tables=N Number of tables [1]
 
--create_secondary[=on|off] Create a secondary key [on]
 
接下来就是重点了,关于SQL API的定制,其实是有规则可循的。
 
我们来看看第3个Lua模板,test3.lua
 
function thread_init()
 
drv = sysbench.sql.driver()
 
con = drv:connect()
 
end
 
function event()
 
con:query("SELECT 1"
 
)
 
end
 
function thread_done()
 
con:disconnect()
 
end
 
使用命令即可完成测试。
 
sysbench test3.lua --mysql-user=sysbench_test --mysql-password=mysql --mysql-host=127.0.0.1 --mysql-port=65535 --mysql-db=sysbench_db run
 
“MySQL压力测试中如何定制sysbench的Lua模板”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读