SysBench在windows下的压力测试教程(排坑,综合)

SysBench在windows下的压力测试教程

1.环境配置

官方开源 https://github.com/akopytov/sysbench

由于sysbench已经放弃了在windows上支持,所以可以构建windows下的linux系统进行测试(wsl),环境配置流程为:首先安装wsl,之后在wsl中安装sysbench,mysql,进一步在通过wsl连接主机(windows)的数据库,之后就可以进行测试了

1.1 wsl安装

巨硬官方说明 https://learn.microsoft.com/zh-cn/windows/wsl/install

https://learn.microsoft.com/zh-cn/windows/wsl/setup/environment

划重点:在管理员下运行powershell

wsl --install

之后打开ubuntu应用程序(虚拟机),进行用户名及密码配置(首次)

1.2 wsl(ubuntu)中安装sysbench

参考github官方开源readme

划重点,直接运行:

curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.deb.sh | sudo bash
sudo apt -y install sysbench

测试是否安装成功可以浅浅的输入一下sysbench,确认是否有输出

1.3 wsl中安装mysql

参考链接: https://blog.csdn.net/weixin_45626288/article/details/133220238

划重点:

sudo apt update
# 查看可使用的安装包
sudo apt search mysql-server
# 安装最新版本
sudo apt install -y mysql-server
# 安装指定版本(安装最新版本,当前命令不用运行)
sudo apt install -y mysql-server-8.0
# 设置开机启动
sudo systemctl start mysql
sudo systemctl enable mysql
# 检查mysql状态
sudo systemctl status mysql

1.4 在wsl中连接主机数据库

参考链接: https://www.yisu.com/jc/535493.html

由于数据库建立在windows中,压力测试并不想在虚拟机中重新构建数据库,因此需要连接如何在wsl中连接主机数据库

  • 首先获取主机ip,打开主句powershell,输入ipconfig,查看wsl虚拟机的ip地址,记住该地址如192.168.1.1

  • 然后在wsl中尝试能否使用mysql数据库,输入:

    mysql -h 192.168.1.1 -uusername -ppassword
    

    注意-u之后为用户名,-p之后为密码

  • 判断连接成功,即可进行下一步测试啦

2. 测试说明

参考链接:

https://www.bilibili.com/video/BV1ko4y187er/?spm_id_from=333.337.search-card.all.click

https://blog.csdn.net/oschina_41731918/article/details/128000593

https://blog.csdn.net/squirrel100/article/details/120290157

  • 划重点:注意指标
指标英文含义说明
QPSQuery Per Second数据库每秒执行的SQL数,包含insert、select、update、delete等。
TPSTransaction Per Second数据库每秒执行的事务数,每个事务中包含18条SQL语句。
  • 划重点:测试实例
# 线程数=400 
# 已提前在mysql创建数据库obliviate,测试准备阶段将在该数据库生成10个表,每个表大小为1000
# 每隔3s输出一次中间结果,测试时间限制在60s
# 准备阶段:
sysbench --test=/usr/local/share/sysbench/oltp_write_only.lua --mysql-host=host --mysql-port=3306 --mysql-user=root --mysql-password=password --mysql-db=obliviate --report-interval=3 --time=60 --threads=400 --tables=10 --table-size=1000 prepare
# 运行阶段:
sysbench --test=/usr/local/share/sysbench/oltp_write_only.lua --mysql-host=host --mysql-port=3306 --mysql-user=root --mysql-password=host --mysql-db=obliviate --report-interval=3 --time=60 --threads=400 --tables=10 --table-size=1000 run
# 清理阶段:
sysbench --test=/usr/local/share/sysbench/oltp_write_only.lua --mysql-host=host --mysql-port=3306 --mysql-user=root --mysql-password=password --mysql-db=obliviate --report-interval=3 --time=60 --threads=400 --tables=10 --table-size=1000 cleanup
# host地址和密码请换成自己的

**此处有个小问题:**路径/usr/local/share/sysbench可能并不存在,我的地址时/usr/share/sysbench可以去user中自己翻一翻路径

3. 常见问题

3.1 wsl安装问题

参考链接: https://www.cnblogs.com/Sysyphus42/p/17916303.html

3.1.1 无法解析服务器的名称或地址

尝试了网上的更改网络适配器设置和网络属性的方法并未解决问题.

解决办法: 用梯子

3.1.2 “WslRegisterDistribution failed with error: 0x8004032d”

解决方法: 打开控制面板 – 程序 – 启动或关闭Windows功能 – 勾选"适用于Linux的Windows子系统" 和 “虚拟机平台” – 点击"确定" – 重启计算机

再次打开Ubuntu后输入用户名和密码, 登陆成功即可使用.

3.2 压力测试问题

Error: Can’t create more than max_prepared_stmt_count statements (current value: 16382)

参考链接:https://blog.csdn.net/zgj_online/article/details/120993335

问题出现的原因应该是线程数设置过多以及读写数据太频繁与设置的预编译语句限制有冲突,尝试修改限制次数,解决

划重点:在主机的mysql数据库管理软件中输入以下语句,加大预编译限制,问题解决

show global status like 'com_stmt%';
set global max_prepared_stmt_count=1048576;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/755798.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

IP白名单及其作用解析

在网络安全领域,IP白名单是一项至关重要的策略,它允许特定的IP地址或地址范围访问网络资源,从而确保只有受信任的终端能够连接。下面,我们将深入探讨IP白名单的定义、作用以及实施时的关键考虑因素。 一、IP白名单的定义 IP白名单…

利用python爬取上证指数股吧评论并保存到mongodb数据库

大家好,我是带我去滑雪! 东方财富网是中国领先的金融服务网站之一,以提供全面的金融市场数据、资讯和交易工具而闻名。其受欢迎的“股吧”论坛特别适合爬取股票评论,东方财富网的股吧聚集了大量投资者和金融分析师,他们…

GOROOT GOPATH GOPROXY GO111MODULE

GOROOT GOROOT代表Go的安装目录。可执行程序go(或go.exe)和gofmt(或gofmt.exe)位于 GOROOT/bin目录中。 配置GOROOT环境变量,其值为Go的安装目录;然后在环境变量PATH中添加GOROOT/bin路径。 注意:GOROOT变量只是代表了安装目录,不…

DiskGeniusV5.6.0.1565发布!

DiskGenius是一款功能强大的磁盘管理和数据恢复工具,V5.6.0.1565上线。新版本变化比较大,增加新的功能,修正已经问题,值得试一下。提醒大家,磁盘管理软件涉及数据安全,请始终使用最新版本! 下面…

Linux开发讲课18--- “>file 2>1“ 和 “2>1 >file“ 的区别

在 Bash 脚本和命令行操作中,输出重定向是一项基本且强大的功能。它允许用户控制命令的输出流,将数据从一个地方转移到另一个地方,实现更加灵活和高效的工作流程。本文旨在记录 Bash 中几种常见的输出重定向方法,包括: -. > fi…

计算机Java项目|基于SpringBoot的新闻稿件管理系统

作者主页:编程指南针 作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容:Java项目、Python项目、前端项目、人工智能与大数据、简…

密码学:用随机函数隐藏指纹

英文中e的出现频率高,加密后,频率最高的那个符号代表e。这是历史上的一次真实案例。这些符号的概率,叫做“指纹”。 把e加密成2个符号,用随机函数选择,例如70%概率下选择符号1,30%选择符号2。解密时&#…

启智畅想:AI集装箱箱号识别系统,解决方案提供商

AI集装箱箱号识别系统 当前,智能卡口管理行业正处于快速发展的阶段。随着物联网、大数据、人工智能等技术的不断进步,智能卡口管理系统已经能够实现对集装箱运输的全程跟踪、监控和管理,大大提高了管理效率和安全性。然而,市场上现有的智能卡口管理系统仍然存在一些痛点问题,如…

Spring容器的启动过程及留给开发者的可拓展点

一、Spring容器启动经过了哪些过程? 1、首先需要加载读取到应用环境中的配置,比如要加载的bean的class的包路径等信息。 【读取配置】 2、再就需要找到哪些类是需要spring进行类实例创建并管理的,扫描到具体的Class及Class元信息上的一些注…

【漏洞复现】电信网关配置管理系统——命令执行

声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 电信网关配置管理系统是一个用于管理和配置电信网关设备的软件系…

为什么Modbus链接/从机不通?From 摩尔信使MThings

为了回应用户平日里关于摩尔信使(MThings)使用过程中最常见的问题,包括“网络链接连不上”、“为什么不能增加串口”和“为什么从机不通”,我们在此统一介绍解决方法。 1、具备哪些通信能力 支持串口和网络两种通信方式。 需要…

开箱即用的fastposter海报生成器

什么是 fastposter ? fastposter 海报生成器是一款快速开发海报的工具。只需上传一张背景图,在对应的位置放上组件(文字、图片、二维码、头像)即可生成海报。 点击代码直接生成各种语言 SDK 的调用代码,方便快速开发。 软件特性&…

NSSCTF-Web题目18(反序列化)

目录 [NISACTF 2022]babyserialize 1、题目 2、知识点 3、思路 [SWPUCTF 2022 新生赛]ez_ez_unserialize 4、题目 5、知识点 6、思路 [NISACTF 2022]babyserialize 1、题目 2、知识点 反序列化、绕过过滤、命令执行 3、思路 <?php include "waf.php";…

正版软件 | R-Studio Corporate:企业级数据恢复的终极解决方案

数据是企业的生命线&#xff0c;而数据丢失可能随时威胁到企业的正常运营。R-Studio Corporate 是一款专为企业环境设计的多功能数据恢复软件&#xff0c;确保您在面临数据危机时&#xff0c;能够迅速、高效地恢复宝贵数据。 跨平台操作&#xff0c;灵活恢复 R-Studio Corporat…

雷池软硬件部署模式

硬件模式&#xff1a; 硬件反向代理 VRRP 硬件透明代理 雷池硬件设备 硬件透明墙 硬件流量镜像 流量镜像具备旁路阻断攻击的能力 软件模式 模式对比

shopify入门教程-应用开发(二)

4.内网穿透 为什么要用这个&#xff0c;就是把电脑上的开发内容通过内网穿透显示到你的开发店铺上。这里的内网穿透我用了ngrok,花生壳&#xff0c;但都不如shopify官方推荐的cloudflare好用。所以这里我也推荐cloudflare。 运用内网穿透2个步骤 把app运行起来 ​​​​​​​…

正点原子rk3588编译sdk

1、编译SDK 1.1 安装 RK3588 Linux SDK .repo/repo/repo sync -l -j101.2 SDK 工程目录介绍 app&#xff1a;存放上层应用 app&#xff0c;包括 Qt 应用程序&#xff0c;以及其它的 C/C应用程序。 buildroot&#xff1a;基于 buildroot 开发的根文件系统。 debian&#xff1…

【shell脚本实战案例】数据磁盘初始化

文章目录 一、案例应用场景二、案例需求三、案例算法四、代码实现五、实现验证 &#x1f308;你好呀&#xff01;我是 山顶风景独好 &#x1f388;欢迎踏入我的博客世界&#xff0c;能与您在此邂逅&#xff0c;真是缘分使然&#xff01;&#x1f60a; &#x1f338;愿您在此停留…

已解决javax.xml.bind.MarshalException:在RMI中,参数或返回值无法被编组的正确解决方法,亲测有效!!!

已解决javax.xml.bind.MarshalException&#xff1a;在RMI中&#xff0c;参数或返回值无法被编组的正确解决方法&#xff0c;亲测有效&#xff01;&#xff01;&#xff01; 目录 问题分析 出现问题的场景 服务器端代码 客户端代码 报错原因 解决思路 解决方法 1. 实现…

IBCS 虚拟专线用哪些特点!

当今数字化时代&#xff0c;高效、稳定、安全的网络连接对于企业和个人来说至关重要。IBCS 虚拟专线作为一种创新的网络解决方案&#xff0c;凭借其众多显著的优势&#xff0c;正逐渐成为众多用户的首选。 IBCS 虚拟专线最突出的优势之一在于其卓越的网络性能。它通过优化网络路…