super-smack的使用

本文详细介绍使用Smack进行数据库性能测试的全过程,包括测试前的准备步骤,如配置smack文件,生成测试数据,以及执行测试的具体命令。同时,文章还分享了解决常见错误的方法,如数据库连接问题,并解释了如何通过添加软链接来解决。最后,文章提供了测试结果的解读,帮助读者理解性能测试报告。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

测试前准备:

1)smack 文件是放在 /usr/share/smacks/目录下:select-key.smack和update-select.smack需要修改2个文件中和数据库相关地方2处需要修改:

client "admin"

{

 user "test";//数据库用户名

 host "127.0.0.1";//数据库IP

 db "test";//数据库

 pass "123456";//数据库密码

 socket "/tmp/mysql.sock"; // mysql.sock的放置位置

// ignored for PostgreSQL

}

注:super-smack 文件里面有两个客户端,一个是 client "admin",还有一个是 client "smacker1"

 

2)执行测试语句

./gen-data -n 9000 -f %12-12s%n,%25-25s,%n,%d > /tmp/data/words.dat

如果安装的时候没有设置 super-smack 的安装路径,又在默认的安装位置没有找到 gen-data文件,可以用

find / -type f -name 'gen-data'

为什么要 生成 words.dat 文件,这就要看看接下来要执行的语句了

super-smack -d mysql /usr/share/smacks/select-key.smack 2 5

参数解析:-d 数据库类型, -D 原始数据目录,2表示2个线程,每个线程 5个查询

在文件select-key.smack里面需要调用 words.dat 数据文件

 

执行报错

super-smack: aborting because of a database error: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

如果报这个错误,是因为select-key.samck里面的配置文件的问题,我直接给 /var/lib/mysql/mysql.sock 添加一个  软链接

ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

再次执行  super-smack -d mysql /usr/share/smacks/select-key.smack 2 5

输出的结果较为简略,只包含了查询的次数,最大耗时,最小耗时,每秒执行的查询,会按照查询类型进行分类计数之后输出

 

结束

参考:http://blog.51cto.com/yangxiongchun/1419823

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值