我有 Oracle XE 21c 和 HammerDB 4.4。任务是对数据库进行基准测试。
Oracle Database 21c Express Edition 版本 21.0.0.0.0 - 生产版本 21.3.0.0.0
好吧,正因为如此,我在 'sqlplus system/pass_of_sys' 之后执行了以下命令:
alter session set container=XEPDB1; (that's the name of pluggable DB);
create tablespace tpcctab datafile 'tpcctab.dat' size 8G autoextend on;
create temporary tablespace tpcctemp tempfile 'tpcctemp.dat' size 4G autoextend on;
我创建了在本地机器上运行的 HammerDB 创建模式脚本:
dbset bm TPROC-C
dbset db ora
diset connection system_user system
diset connection system_password pass_of_sys
diset connection instance 192.168.192.11/XEPDB1
diset tpcc tpcc_user tpcc
diset tpcc tpcc_pass tpcc
diset tpcc tpcc_def_tab tpcctab
diset tpcc tpcc_def_temp tpcctemp
diset tpcc count_ware 4
diset tpcc num_vu 3
buildschema
.... 以及在同一网络中的另一台机器上运行的驱动程序脚本:
dbset db ora
dbset bm TPROC-C
diset connection system_user system
diset connection system_password pass_of_sys
diset connection instance 192.168.192.11/XEPDB1
diset tpcc tpcc_user tpcc
diset tpcc tpcc_pass tpcc
diset tpcc ora_driver timed
diset tpcc rampup 1
diset tpcc duration 1
diset tpcc checkpoint true
diset tpcc total_iterations 1000
diset tpcc allwarehouse true
loadscript
vuset vu 3
vuset logtotemp 1
vucreate
vurun
每次第一个脚本创建 tpcc 用户时,都会执行多个事务并失败 - 即使写入'diset connection instance 192.168.192.11:1521/XEPDB1',Oracle XE 返回不同的错误,每次错误都不同:
- KPEDBG_HDL_PUSH_FCPTRMAX;
- KPEDBG_HDL_POP_FCPTR;
- KPEDBG-...TLSORA-24550 等等。
此外,加速期不会开始。如果在字符串'diset tpcc total_iterations 1000'中的驱动程序脚本中写入超过1000,或在'diset tpcc duration 2'中写入超过1 - 即使没有具有相同错误代码的事务,驱动程序脚本也会失败......当然我了解 XE 限制。
那么我应该怎么做才能完成这项任务呢?有什么想法吗?((