安装
到官网下载
别忘了设置环境变量,安装oracle客户端
造数据
./oewizard
注意,要选择分区表,会快很多,不然看到很多contention
EVENT (C) TOTAL WAITS TIME(s) AVG_MS PCT WAIT_CLASS enq: HW - contention 487468 5493 11.3 29 Configuration SQL*Net more data from client 1936350 5411 2.8 28 Network enq: TX - contention 41697 3555 85.3 19 Other DB CPU 3092 16 db file async I/O submit 5975 1471 246.2 8 System I/O
根据上面的数据生成速度,一天24小时大约能生成2.8T的数据。
造数据一个32G的临时表空间还不够,还要加一个:
alert_log中有
Thu Mar 26 05:44:26 2020 ORA-1652: unable to extend temp segment by 128 in tablespace TEMP SQL> ! ls -lh /u01/app/oracle/oradata/orcl/orcl/temp* -rw-r-----. 1 oracle oinstall 32G 3月 26 05:52 /u01/app/oracle/oradata/orcl/orcl/temp01.dbf
ORACLE 临时表空间的增加:
alter tablespace temp add tempfile '/u01/app/oracle/oradata/orcl/orcl/temp02.dbf' size 100m autoextend on maxsize unlimited; set linesize 200 col file_name for a50 select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;
删除
drop tablespace soe including contents and datafiles; drop user soe cascade;
字符界面批量造数据
for i in {1..2} do ./oewizard -cl -create -scale 30 -cs //localhost:1521/orcl -dbap dingjia -u soe$i -p soe$i -ts soe$i -df /u01/app/oracle/oradata/orcl/orcl/soe$i.dbf -s done
scale 控制生成数据量的大小,这里设置成30,实际生成了70G的数据。scale是1时,实际造出来的数据是2.3G。
清除数据
for i in {1..2} do ./oewizard -scale 0.1 -cs //localhost:1521/orcl -dbap dingjia -ts SOE$i -u soe$i -p soe$i -cl -drop done
测试
运行swingbench 400用户 加收集awr统计数据
上面的图形界面有个bug,在第一次测试结束后,再按启动的按钮进行后续测试时,计算的时间错误,经常是负数。
字符界面,400个用户测试1分钟
./charbench -c ../configs/SOE_Server_Side_V2.xml -u soe1 -p soe1 -r hugepage_user400.xml -stats full -dbap dingjia -dbau "sys as sysdba" -uc 400 -rt 0:01 -cs //localhost/orcl