使用数据库的压测工具super-smack测试mysql数据库性能

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:
一、下载
 
super-smack
 
下载地址:http://vegan.net/tony/supersmack/
 
源码:http://vegan.net/tony/supersmack/super-smack-1.3.tar.gz
 
二、编译及安装
 
配置编译选项:./configure --prefix=/usr/local/super-smack-1.3 --with-mysql --with-smacks-dir=/usr/local/super-smack-1.3
 
请根据测试的数据库来选择 --with-pgsql --with-oracle 或 --with-mysql
 
重点说明一下--with-mysql的编译配置:
 
编译的时候要把/usr/lib64目录下的libmysqlclient.so.16放到/usr/lib目录下,否则会出现下面的错误:
 
configure: error: Could not find libmysqlclient in ' /usr/lib /usr/lib/mysql                    /usr/local/lib /usr/local/lib/mysql                    /usr/local/mysql/lib
 
configure: error: Could not find mysql.h in ' /usr/include /usr/include/mysql                        /usr/local/include /usr/local/include/mysql                        /usr/local/mysql/include'
 
由于我的mysql是自行编译的,所以我这样操作
 
cd /usr/include; ln -s /usr/local/mysql/include/mysql
 
cd /usr/lib; ln -s /usr/local/mysql/lib/mysql
 
编译及安装:
make;make install
 
三、使用方法及常见问题
 
为方便使用
 
ln -s /usr/local/super-smack/bin/super-smack /usr/local/bin/
 
ln -s /usr/local/super-smack/bin/gen-data /usr/local/bin/
 
使用方法:
 
cd /usr/lib;ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.16.0.0 libmysqlclient.so.16
 
或者
 
cd /usr/lib;cp -a /usr/local/mysql/lib/mysql/libmysqlclient.so.16.0.0 libmysqlclient.so.16
 
否则会有如下问题:
 
# super-smack -d mysql /usr/local/super-smack/select-key.smack 10 1000
 
super-smack: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory
 
注意可能要根据实际情况修改select-key.smack文件中数据库连接部分的配置。
 
注意还需要指定select-key.smack 文件的具体位置,否则会出现下面的错误提示。
 
# super-smack select-key.smack 10 1000
 
super-smack: Could not open input file select-key.smack errno = 2, error is No such file or directory
 
四、正常使用的范例
 
[root@MySQL lib]# super-smack -d mysql /usr/local/super-smack/select-key.smack 10 1000       
 
Error running query select count(*) from http_auth:Table 'test.http_auth' doesn't exist
 
Creating table 'http_auth'
 
Populating data file '/var/smack-data/words.dat' with shell command 'gen-data -n 90000 -f %12-12s%n,%25-25s,%n,%d'
 
Loading data from file '/var/smack-data/words.dat' into table 'http_auth'
 
Table http_auth is now ready for the test
 
Query Barrel Report for client smacker1
 
connect: max=2809ms  min=3ms avg= 586ms from 10 clients 
 
Query_type      num_queries     max_time        min_time        q_per_s
 
select_index    20000   0       0       2243.93
 
注意,本文只是抛砖引玉,实际测试中,根据实际情况,需要认真构造测试脚本。


     本文转自xiaoyuwang 51CTO博客,原文链接:http://blog.51cto.com/wangxiaoyu/463311,如需转载请自行联系原作者


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
348
分享
相关文章
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
docker拉取MySQL后数据库连接失败解决方案
通过以上方法,可以解决Docker中拉取MySQL镜像后数据库连接失败的常见问题。关键步骤包括确保容器正确启动、配置正确的环境变量、合理设置网络和权限,以及检查主机防火墙设置等。通过逐步排查,可以快速定位并解决连接问题,确保MySQL服务的正常使用。
151 82
MySQL原理简介—3.生产环境的部署压测
本文介绍了Java系统和数据库在高并发场景下的压测要点: 1. 普通系统在4核8G机器上每秒能处理几百个请求 2. 高并发下数据库建议使用8核16G或更高配置的机器 3. 数据库部署后需进行基准压测,以评估其最大承载能力 4. QPS和TPS的区别及重要性 5. 压测时需关注IOPS、吞吐量、延迟 6. 除了QPS和TPS,还需监控CPU、内存、磁盘IO、网络带宽 7. 影响每秒可处理并发请求数的因素包括线程数、CPU、内存、磁盘IO和网络带宽 8. Sysbench是数据库压测工具,可构造测试数据并模拟高并发场景 9. 在增加线程数量的同时,必须观察机器的性能,确保各硬件负载在合理范围
155 72
ThinkPHP框架show columns引发mysql性能问题
ThinkPHP框架的show columns引发mysql性能问题,结尾有关闭方式。
43 13
缓存与数据库的一致性方案,Redis与Mysql一致性方案,大厂P8的终极方案(图解+秒懂+史上最全)
缓存与数据库的一致性方案,Redis与Mysql一致性方案,大厂P8的终极方案(图解+秒懂+史上最全)
无缝集成 MySQL,解锁秒级 OLAP 分析性能极限,完成任务可领取三合一数据线!
通过 AnalyticDB MySQL 版、DMS、DTS 和 RDS MySQL 版协同工作,解决大规模业务数据统计难题,参与活动完成任务即可领取三合一数据线(限量200个),还有机会抽取蓝牙音箱大奖!
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
222 42
MySQL生产环境迁移至YashanDB数据库深度体验
这篇文章是作者将 MySQL 生产环境迁移至 YashanDB 数据库的深度体验。介绍了 YashanDB 迁移平台 YMP 的产品相关信息、安装步骤、迁移中遇到的各种兼容问题及解决方案,最后总结了迁移体验,包括工具部署和操作特点,也指出功能有优化空间及暂不支持的部分,期待其不断优化。
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
166 25

热门文章

最新文章