千家信息网

达梦数据库的TPCC测试记录

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,达梦数据库的TPCC测试记录测试环境本文主要目的是介绍使用 benchmarksql工具进行 TPCC 测试的步骤使用工具版本:benchmarksql-4.1.1服务器:华为泰山v1CPU:海思16
千家信息网最后更新 2026年10月31日达梦数据库的TPCC测试记录

达梦数据库的TPCC测试记录

测试环境
本文主要目的是介绍使用 benchmarksql工具进行 TPCC 测试的步骤
使用工具版本:benchmarksql-4.1.1

服务器:华为泰山v1
CPU:海思1616 32核x2;
内存:192G;
硬盘:1.2Tx5
系统:中标麒麟 release V7Update6/(Chromium)-aarch74

1.上传数据库的驱动包jar文件
上传目录:/home/setup/tpcc/benchmarksql-4.1.1/lib/

2.初始化相关配置
1、创建测试用户
[root@oracle dm7]# su - dmdba
[dmdba@yun201 dmdbms]$ cd /dm7/bin
[dmdba@yun201 bin]$ ./disql SYSDBA/SYSDBA@localhost

create tablespace TPCC datafile 'TPCC01.dbf' size 128 autoextend on maxsize unlimited;
create user BENCHMARKSQL identified by "123456789" default tablespace TPCC;
grant DBA to BENCHMARKSQL;

2、配置props.dm脚本内容
driver=dm.jdbc.driver.DmDriver
conn=jdbc:dm://IP地址:端口号
user=BENCHMARKSQL
password=123456789

warehouses=100
terminals=144
//To run specified transactions per terminal- runMins must equal zero
runTxnsPerTerminal=0
//To run for specified minutes- runTxnsPerTerminal must equal zero
runMins=5
//Number of total transactions per minute
limitTxnsPerMin=0

//The following five values must add up to 100
newOrderWeight=45
paymentWeight=43
orderStatusWeight=4
deliveryWeight=4
stockLevelWeight=4

注:runMins=5 表示测试时间为 5分钟

3.创建表
包含创建表语句,扩库以及日志文件、优化表语句
先在sqlTableCreates_DM这个文件里编写SQL语句
[root@isdtest run]#cd /home/setup/tpcc/benchmarksql-4.1.1/run
[root@isdtest run]# ./runSQL.sh props.dm dm01_sqlTableCreates

-bash: ./runSQL.sh: 权限不够
如果有提示这个执行权限不够,将执行赋值权限操作:
[root@isdtest run]# chmod -R 755 /home/setup/tpcc/benchmarksql-4.1.1

4.创建索引
[root@isdtest run]#./runSQL.sh props.dm dm02_sqlIndexCreates

5.装载数据
模拟真实业务的交易数据
[root@isdtest run]#./runLoader.sh props.dm numWarehouses 100
这步需要等待一会时间,性能好的20分钟,泰山服务器60分钟

提示以下信息表示执行装载数据完成。

6.修改数据库参数

手动修改数据库的参数,如达梦数据库 dm.ini 的下列参数:
MAX_OS_MEMORY = 100
MEMORY_POOL = 1000
BUFFER = 100000
BUFFER_POOLS = 101
FAST_POOL_PAGES = 90000
FAST_ROLL_PAGES = 80000
RECYCLE = 8
MULTI_PAGE_GET_NUM = 64
MAX_BUFFER = 100000
VM_MEM_HEAP = 0
WORKER_THREADS = 24
WORK_THRD_STACK_SIZE = 512
CKPT_RLOG_SIZE = 0
CKPT_INTERVAL = 3600
CKPT_DIRTY_PAGES = 0
FORCE_FLUSH_PAGES = 0
IO_THR_GROUPS =12
CHECK_DB_IS_ACTIVE = 0
BDTA_SIZE = 20
ENABLE_SPACELIMIT_CHECK = 0
RLOG_PARALLEL_ENABLE = 1
RLOG_RESERVE_SIZE = 0
SESS_CHECK_INTERVAL = 30
FAST_RELEASE_SLOCK = 0
NOWAIT_WHEN_UNIQUE_CONFLICT = 1
UNDO_EXTENT_NUM = 32
UNDO_RETENTION = 1
MAX_SESSIONS = 1000
SUBQ_EXP_CVT_FLAG = 0
PURGE_DEL_OPT = 1
ENABLE_FREQROOTS = 2
CACHE_POOL_SIZE = 100
DICT_BUF_SIZE = 20
ENABLE_MONITOR = 0

注 1:BUFFER 估算公式为:单库不超过 100M,BUFFER>= 100M * 库个数。内存允许的 情况下,可以放大。
注 2:WORKER_THREADS 估算公式为:WORKER_THREADS = 系统逻辑 cpu 个数

注 3:IO_THR_GROUPS 估算公式为:IO_THR_GROUPS =系统逻辑 cpu 个数 / 2
注 4:BDTA_SIZE=20 和 UNDO_RETENTION<=3 必须同时设置
注 5:N_PLN_POOLS=17 老版本有用,新版本废弃。

7.重启服务器
service DmServiceDMSERVER restart

8.预加载数据到内存
[root@isdtest run]#./runSQL.sh props.dm dm03_sqlCount

9.执行测试
修改 log4j.xml
确保配置文件有这条配置,如果没有,手动添加(压力机硬件较差的情况会对测试结果造成巨大影响):

执行命令如下:
[root@isdtest ~]# cd /home/setup/tpcc/benchmarksql-4.1.1/run
[root@isdtest ~]# ./runBenchmark.sh props.dm
这步需要等待一会时间,执行提示多版本操作冲突过多,先忽略。

注:测试结果日志文件目录:run/log/benchmarksql.log

benchmarksql.log测试结果说明
Measured tpmC (NewOrders) = 196182.35,每分钟新订单数为19万多,每秒196182/60=3269多交易,新订单占比45%左右
Measured tpmTOTAL = 436217.74,每分钟处理的总数为43万多,每秒196182/60=7270多交易
Transaction Count = 2181364,5分钟处理的总数218万多

数据 测试 数据库 文件 配置 个数 公式 内存 参数 时间 服务器 权限 版本 系统 结果 语句 交易 提示 服务 不够 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网与科技发展 深圳互联网科技公司 互联网科技公司官网 银优互联网科技有限公司 智慧科技互联网 科技创新互联网企业 互联网高科技股票 一五八零互联网科技 青海省互联网新科技 深圳前海聚择互联网科技有限公司 北京华百购互联网科技有限公司 阿里互联网科技公司 互联网经济与金融科技 互联网为啥属于高科技 深圳艾果互联网通讯科技 产业互联网科技服务公司 有人说阿里系是互联网科技企业 保山互联网科技靠谱吗 玉溪新华互联网科技怎么选 互联网科技大会大佬 南京欣网互联网络科技有限公司 互联网科技公司官网 长亮科技互联网金融 阿里巴巴算科技企业还是互联网 互联网与医疗科技 速维有品互联网信息科技(苏州)有限公司 山东有哪些互联网科技公司 杭州披云加互联网科技有限公司 互联网与数字科技关系 互联网科技博主张洲
0