swingbench命令行压测

文章目录

  • 一、配置jdk18
  • 二、 前置准备
  • 三、造数据
  • 四、压测
  • 五、删除数据以及用户

一、配置jdk18

下载jdk18

wget --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/java/18/archive/jdk-18.0.2_linux-x64_bin.tar.gz

解压安装包

tar -zxvf jdk-18.0.2_linux-x64_bin.tar.gz -C /usr/local/

重命名目录

sudo mv /usr/local/jdk-18.0.2 /usr/local/jdk18
su - oracle

配置环境变量

vim .bash_profle
export JAVA_HOME=/usr/local/jdk18
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib
source .bash_profile

二、 前置准备

– 创建Swingbench用户表空间

CREATE TABLESPACE soe DATAFILE '+test' SIZE 30G;
ALTER TABLESPACE soe ADD DATAFILE '+test' size 31G;  

这里注意: 要创建50G的数据,实际使用空间为96.5G。

– 创建soe用户

create user soe identified by soe DEFAULT TABLESPACE soe;
GRANT EXECUTE ON dbms_lock TO soe;
grant dba to soe;

– 保证临时表空间名字为TEMP

CREATE TEMPORARY TABLESPACE TEMP TEMPFILE '+test' SIZE 30G;
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP;

############# swingbench下载 测试为 2.7.0.1511版本

https://www.dominicgiles.com/swingbench/#setting-up   -- 官网连接
https://www.dominicgiles.com/downloads/   -- 下载地址

下载完成上传服务器

解压swingbench包

unzip swingbenchlatest.zip

三、造数据

cd swingbench/bin

注意这里不要使用scan ip会造成双份数据,这里用vip加对应的端口 show parameter local_listener 确定

./oewizard -cl -create -cs //vip:1522/servername -u soe -p soe -scale 50 -tc 32 -dba "sys as sysdba" -dbap "密码" -ts SOE

200
-cl: 每次造数据会清除之前的数据
-scale: 数据大小 1代表1G 50代表50G
-tc: 32代表有32个线程工作, 不超过CPU核心数的2倍 比如32核cpu,最大能设置为64

四、压测

./charbench -c ../configs/SOE_Server_Side_V2.xml -u soe -p soe -uc 3000 -cs  //scan ip:1521/servername -min 0 -max 10 -intermin 200 -intermax 500 -v users,tpm,tps,dml,errs,vresp 

-uc 100: 设置用户连接数
-min 0: 事务内部操作的最小思考时间为0毫秒(即无延迟)
-max 10: 事务内部操作的最大思考时间为10毫秒 – 控制事务执行过程中,每个步骤之间的等待时间范围(例如模拟用户输入或操作间隔),直接影响事务的密集程度和整体负载。
-intermin 200: 事务间的最小间隔时间为200毫秒
-intermax 500: 事务间的最大间隔时间为500毫秒
users: 实时活跃用户数
tpm: 每分钟事务数
tps: 每秒事务数
errs: 错误率
vresp: 响应时间分布

五、删除数据以及用户

drop user soe CASCADE;

你可能感兴趣的:(Oracle,软件工具,oracle,数据库)