benchmarksql 在5.0版本中没有对人大金仓数据库(KingBase)的TPC-C测试支持,本文通过修改部分源码,让benchmarksql 5.0支持KingBase。

个人理解: BenchmarkSQL 是通过jdbc方式连接数据库,通过DML操作来对数据进行性能测试。

所以,对于不同类型的数据,BenchmarkSQL只要获取到对应的驱动,及正确的URL格式,账号密码等,就能与不同类型数据库进行连接,

再对数据库进行DML操作来对数据库进行性能测试。一般常用的数据库的DML语句都是差不多的。

所以,要BenchmarkSQL不同类型数据库,基本上只要增加该数据库的驱动,连接数据库的配置文件,及源码里对数据库类型做个判断就差不多了。

以下是 简单几步实现BenchmarkSQL对人大金仓数据库性能测试

环境:

centos 7.5

benchmarksql 5.0

kingbase 8

jdk 1.8

1. 源码下载,解压

https://download.csdn.net/download/ffb920724/14141743  已支持MySQL

下载BenchmarkSQL5.0版本,目录结构如下

2. 修改源码

2.1  修改 src/client/jTPCC.java,增加kingbase相关部分,如下所示,(保持和MySQL一致)

2.2 (无需改动,已存在default情况)修改src/client/jTPCCConnection.java, SQL子查询增加"AS L"别名,如下所示:

可见,除了jTPCCConfig.DB_POSTGRES这种情况特殊,其他数据库类型(dbType) 统一默认走default;

2.3(这步不需要改动)具体看看jTPCCConfig都有哪些数据库类型,包括 oracle,postgres,其他数据库默认使用DB_UNKNOWN ,包括MySQL,人大金仓等,和2.1中数据库类型赋值对应;

2.4  在lib包下,创建人大金仓目录并添加人大金仓数据库驱动,如下:

注意 要把log4j也加进去,如图所示架包。不然无法打印日志会报错。

2.5 配置人大金仓架包路径  修改/data/BenchmarkSQL/run/funcs.sh文件,添加人大金仓数据库驱动路径

保持和mysql一样格式,注意后面没有 ;;

2.6 添加人大金仓数据库类型  修改/data/BenchmarkSQL/run/funcs.sh文件,

OK,源码修改完成。

3. ant 编译         --》 在 BenchmarkSQL解压目录下(/data/BenchmarkSQL)编译

编译成功!

PS: 如果

没有ant 命令 ,yum install ant  在线安装即可。

4.  在 run 目录下,新增人大金仓配置文件

主要变动内容如下:
db=kingbase
driver=com.kingbase8.Driver
conn=jdbc:kingbase8://localhost:54321/xxx
user=xxx
password=xxx

。。。。

完成BenchmarkSQL对人大金仓数据库性能测试的支持!

后面就和测试mysql已支持的数据库一样操作即可。

BenchmarkSQL对mysql进行性能测试 https://blog.csdn.net/ffb920724/article/details/112478578

参考: https://www.jianshu.com/p/622545cb1341

BenchmarkSQL 5.0源码修改 -- 支持 人大金仓数据库 KingBase相关推荐

  1. XXL-JOB适配人大金仓数据库kingbase

    一:背景 XXL-JOB版本是2.2.1-SNAPSHOT 二:配置连接池 2.1 首先找到xxl-job-admin目录下的pom.xml文件,把原本mysql-connector-java连接包注 ...

  2. 人大金仓数据库KingBase+SpringBoot+MyBatis的使用

    一.将KingBase提供的jdbc jar包导入到本地maven仓库 mvn install:install-file -Dfile=jar包的位置 -DgroupId=com.kingbase - ...

  3. 人大金仓数据库和达梦数据库性能测试对比

    DM数据库测试 服务器信息:windows操作系统,内存16G 数据库信息:内存默认分配 1批量写入数据性能测试 1.1写入数据格式 id(int),code(String)18-25位數字,name ...

  4. Android6.0 源码修改之 仿IOS添加全屏可拖拽浮窗返回按钮...

    Android6.0 源码修改之 仿IOS添加全屏可拖拽浮窗返回按钮 前言 之前写过屏蔽系统导航栏功能的文章,具体可看Android6.0 源码修改之屏蔽导航栏虚拟按键(Home和RecentAPP) ...

  5. Android6.0 源码修改之Settings音量调节界面增加通话音量调节

    Android6.0 源码修改之Settings音量调节界面增加通话音量调节 前言 今天客户提了个需求,因为我们的设备在正常情况下无法调节通话音量,只有在打电话过程中,按物理音量加减键才能出现调节通话 ...

  6. nacos 适配达梦、人大金仓数据库

    文章目录 一.准备工作 1. 阅读官网文档 2. 下载源码,按官网更详细 3. 下载达梦.人大金仓数据库驱动 二.修改nacos源码 2.1. 引入驱动依赖 2.2. 引用数据库 2.3. 修改配置 ...

  7. nacos适配达梦、人大金仓数据库

    准备工作 1.下载nacos源码.编译,官网更详细 https://nacos.io/zh-cn/docs/quick-start.html 2.下载源码,按官网更详细 git地址:https://g ...

  8. Postgresql适配国产化人大金仓(kingbase)

    背景 为推进国产技术的发展,公司部分项目实行软件国产化 目标 由原来的centos改为UOS,服务器及软件全部替换 适配计划 1.国产化环境搭建 2.原数据库字段长度扩容 3.数据库数据迁移 4.文件 ...

  9. 人大金仓数据库sql语句_人大金仓数据库总结(SQL和JDBC)

    人大金仓作为一款国产数据库,使用的人数和相关资料都比较少. 最近使用人大金仓数据库,做了个简单的SQL和java jdbc的测试,希望能够供大家参考. 1.SQL语句 创建表: CREATE TABL ...

最新文章

  1. 求解稀疏优化问题——增广拉格朗日方法+半光滑牛顿法
  2. C# 操作Excel数据透视表
  3. apollo芯片_ADAS/AD主控芯片研究:集成趋势下的短板与变革
  4. websphere变成英文了
  5. 新闻发布系统类图_如何熟悉一个系统?(内含知识大图)
  6. index.html乱码问题,用apache打开文件index显示乱码为什么
  7. 超出内容用省略号替代
  8. 没有bug队——加贝——Python 47,48
  9. NetAdvangate Infragisticss 控件在工程移动到别的机器上,引用失效问题
  10. 一种RTP接收和解包的程序
  11. SAP License:更改MM物料基本计量单位
  12. 把Ubuntu打造成Mac Macbuntu
  13. 【JAVA语言学习】Java面向对象Ⅲ
  14. LeetCode 字典序排数(最优解法,不接受反驳)
  15. (升级版)基本粒子结构以及宇宙现象的徦说
  16. MC 1.18.2 FORGE 开服教程及自动备份
  17. 拥抱院外处方药,互联网医疗也要“脱虚向实”?
  18. kubernetes的Service Account和secret
  19. 《数据库原理与应用》(第三版)习题参考答案
  20. 嵌入式软件面试经历分享(海康威视涂鸦智能)

热门文章

  1. 每天送给自己一句话(三月)
  2. vr技术在民宿中的应用,让民宿更具特色,更有活力
  3. FabFilter发布 Timeless 3 :创建任何类型的延迟,快速便捷!
  4. CCF python 折点计数
  5. 小小修改,提高你迅雷的下载速度
  6. 将lang=“stylus“转换为lang=“scss“的方法
  7. 广州大学教育管理教育硕士专业学位研究生培养方案(2017非全日制)
  8. PNA修饰多肽Bz-Val-Gly-Arg-PNA|Boc-Val-Leu-Gly-Arg-PNA
  9. 制作企业宣传片的意义。
  10. 罗振宇新书被“喷”,网红打广告是否要讲明利益相关?