jdbc连接串配置(DM8:达梦数据库)
DM 扩展连接属性的使用
- 连接串中可以设置的属性及其说明见下表。
属性名称 | 说明 | 是否必须设置 |
---|---|---|
user | 登录用户 | 是 |
password | 登录密码 | 是 |
host | 主库地址,包括 IP 地址、localhost 或者配置文件中主库地址 列表对应的变量名,如 dm_svc.conf 中的‟o2000‟ | 否 |
port | 端口号,服务器登录端口号 | 否 |
unixSocketFile | LINUX 系 统 中 , 当 服 务 器 与 客 户 端 之 间 使 用UNIXSOCETUNIX-IPC 方式通信时,用于指定客户端连接的UNIXSOCKET 路径文件名。使用 unixSocketFile 时,不需要指定 host 和 port。例如:jdbc:dm://?user=SYSDBA&password=SYSDBA &unixSocketFile=/home/te/foo.sock | 否 |
appName | 客户端应用程序名称 | 否 |
osName | 操作系统名称 | 否 |
socketTimeout | 网 络 通 信 链 路 超 时 时 间 ;单位 ms , 有效值范围0~2147483647,0 表示无限制;默认 0; | 否 |
sessionTimeout | 会话超时时间;单位 s,有效值范围 0~2147483647,0 表示无限制;默认 0; | 否 |
connectTimeout | 连接数据库超时时间;单位 ms,有效值范围 0~2147483647, 0 表示无限制;默认 0; | 否 |
StmtPoolSize | 语句句柄池大小;有效值范围 0~2147483647,0 表示关闭;默认 15; | 否 |
PStmtPoolSize prepare | 语句句柄池大小;有效值范围 0~2147483647,0 表示关闭;默认 0; | 否 |
pstmtPoolValidTime prepare | 语句缓存的有效时间;单位 ms, 有效值范围 0~2147483647,0 表示无限制;默认 0; | 否 |
escapeProcess | 是否进行语法转义处理;取值 1/0 或 true/false;默认 true; | 否 |
autoCommit | 是否自动提交;取值 1/0 或 true/false;默认 true; | 否 |
alwayseAllowCommit | 在自动提交开关打开时,是否允许手动提交回滚;取值1/0 或true/false;默认 true; | 否 |
localTimezone | 指定客户端本地时区,对于本地时区相关时间类型会自动完成服务器时区与本地时区的转换;单位分钟,有效值范围-720~720;默认为当前系统时区; | 否 |
maxRows | 结果集行数限制,超过上限结果集截断;有效值范围0~2147483647,0 表示无限制;默认 0; | 否 |
bufPrefetch | 结果集 fetch 预取消息 buffer 大小;单位 KB,有效值范围32~65535。默认 0 表示按服务器配置,若结果集上指定了fetchSize 会自动预估大小; | 否 |
LobMode | 大字段数据获取模式;1 表示 get 数据时从服务器段获取,2 表示结果集生成时将大字段数据完整缓存到本地;默认 1; | 否 |
ignoreCase | 结果集列名是否忽略大小写;取值 1/0 或 true/false;默认true; | 否 |
continueBatchOnError | 批量执行出错时是否继续执行;默认 false;取值(true/True,false/False) | 否 |
batchType | 批处理模式;1 表示批量绑定执行 2 表示一行一行执行;默认 1; | 否 |
resultSetType | 指 定 默 认 创 建 结 果 集 类 型 ;取值为 java 标准中的ResultSet.TYPE_FORWARD_ONLY ,ResultSet.TYPE_SCROLL_INSENSITIVE ,ResultSet.TYPE_SCROLL_SENSITIVE ,默认ResultSet.TYPE_FORWARD_ONLY | 否 |
dbmdChkPrv | 编目函数是否进行权限检测;取值 1/0 或 true/false;默认true; | 否 |
isBdtaRS | 是否使用列模式结果集,需同步服务器开启该功能;取值 1/0 或 true/false;默认 true; | 否 |
clobAsString | clob 类型列调用resultSetMetaData的getColumnType()映射为Types.VARCHAR 类型;取值 1/0 或 true/false;默认 false; | 否 |
columnNameUpperCase | 列名转换为大写字母;取值 1/0 或 true/false;默认 false; | 否 |
compatibleMode | 兼容其他数据库;取值为数据库名称:oracle 表示兼容 oracle,mysql 表示兼容 mysql; | 否 |
schema | 指定用户登录后的当前模式,默认为用户名的默认模式 | 否 |
loginMode | 指定优先登录的服务器模式。0:优先连接 PRIMARY 模式的库,NORMAL 模式次之,最后选择 STANTBY 模式;1:只连接主库;2:只连接备库;3:优先连接 STANDBY 模式的库,PRIMARY 模式次之,最后选择 NORMAL 模式;4:优先连接 NORMAL 模式的库,PRIMARY 模式次之,最后选择 STANDBY 模式;默认 4; | 否 |
loginStatus | 服务名方式连接数据库时只选择状态匹配的库;0 表示不限制;3 表示 mount 状态;4 表示 open 状态;5 表示 suspend 状态;默认 0; | 否 |
loginDscCtrl | 服务名连接数据库时只选择 dsc control 节点的库;取值 1/0 或 true/false;默认 false; | 否 |
epSelector | 服务名连接数据库时采用何种模型建立连接;0 表示依次选取列表中的不同节点建立连接,使得所有连接均匀地分布在各个节点上;1 表示选择列表中最前面的节点建立连接,只有当前节点无法建立连接时才会选择下一个节点进行连接;默认 0; | 否 |
doSwitch | 若使用服务名方式连接数据库,且服务名中配置了多个 ip,当连接发生异常时是否自动切换到其他库,无论切换成功还是失败都会抛一个 SQLException,用于通知上层应用进行事务执行失败时的相关处理;0 表示关闭连接;1 表示自动切换到其他库;2 配合 epselector=1 使用,如果服务名列表前面的节点恢复了,将当前连接切换到前面的节点上; | 否 |
switchTimes | 服务名连接数据库时,若未找到符合条件的库成功建立连接,将尝试遍历服务名中库列表的次数;有效值范围1~2147483647;默认 1; | 否 |
switchInterval | 服务名连接数据库时,若遍历了服务名中所有库列表都未找到符合条件的库成功建立连接,等待一定时间再继续下一次遍历;单位 ms,有效值范围 0~2147483647;默认 1000; | 否 |
cluster | 配合 auto_reconnect=2、epselector=1 使用,用于检测 DSC 集群节点故障恢复是否成功。取值:DSC,说明用于DSC 环境中; | 否 |
dbAliveCheckFreq | 检测数据库是否存活的频率 ;单位 ms,有效值范围0~2147483647,0 表示不检测;默认 0; | 否 |
compress | 是否压缩消息;0 表示不压缩;1 表示完全压缩;2 表示优化的压缩;默认 0; | 否 |
compressID | 消息压缩算法标识,最终与服务器支持情况协商决定;0 表 示 zip;1 表示 snappy; 默认 0; | 否 |
sslFilesPath | 数据库端开启 ssl 通信加密,该参数指定 ssl 加密文件的路径 | 否 |
sslKeystorePass | 数据库端开启 ssl 通信加密,该参数指定 ssl 加密文件的指令 | 否 |
kerberosLoginConfPath | 用户名加前缀”///”标识开启 Kerberors 认证,该参数指定Kerberors 认证登录配置文件路径 | 否 |
uKeyName | Ukey 的用户名 | 否 |
uKeyPin | Ukey 的口令 | 否 |
cipherPath | 第三方加密算法引擎所在路径 | 否 |
OsAuthType | 指定操作系统认证用户类型,开启操作系统认证时,用户名使用系统用户名。0 表示关闭;1 表示 DBA;2 表示 SSO; 3 表示 AUDITOR;4 表示自适应。默认 0 | 否 |
loginEncrypt | 是否进行通信加密;取值 1/0 或 true/false;默认 true; | 否 |
loginCertificate | 该参数用于指定 dmkey 工具生成的公钥文件路径,非加密通信的情况下,可对登录用户名密码进行增强加密; | 否 |
mppLocal | 是否 MPP 本地连接;取值 1/0 或 true/false;默认 false; | 否 |
mppOpt | Mpp 集群批量插入数据的优化处理;范围 0~1;默认 0; | 否 |
rwSeparate | 是否使用读写分离系统;0 表示不启用;1 表示启用;2 表示启用,备库由客户端进行选择,且只会选择服务名中配置的节点。默认 0 | 否 |
rwPercent | 分发到主库的事务占主备库总事务的百分比;单位%,范围0~100;默认 25; | 否 |
rwAutoDistribute | 读写分离系统事务分发是否由 JDBC 自动管理;取值 1/0 或true/false;默认 true;false:事务分发由用户管理,用户可通过设置连接上的 readOnly 属性标记事务为只读事务; | 否 |
rwHA | 是否开启读写分离系统高可用;取值 1/0 或 true/false;默认false; | 否 |
rwStandbyRecoverTime | 读写分离系统备库故障恢复检测间隔,单位 ms,有效值范围 0~2147483647,0 表示不回复;默认 60000 | 否 |
enRsCache | 是否开启结果集缓存;取值 1/0 或 true/false;默认 false; | 否 |
rsCacheSize | 设置结果集缓冲区大小,以 M 为单位。有效值范围 1~65535,如果设置太大,可能导致空间分配失败,进而使缓存失效 | 否 |
rsRefreshFreq | 结果集缓存检查更新的频率,以秒为单位,有效值范围0~10000,如果设置为 0,则不需检查更新; | 否 |
keyWords | 标识用户关键字,所有在列表中的字符串,如果以单词的形式出现在 sql 语句中,则这个单词会被加上双引号;默认为空串 | 否 |
logDir | 日志等其他一些 JDBC 过程文件生成目录,默认为 jvm 当前工作目录; | 否 |
logLevel | 生成日志的级别,日志按从低到高依次如下(off:不记录;error:只记录错误日志;warn:记录警告信息;sql:记录 sql执行信息;info:记录全部执行信息;all:记录全部),高级别同时记录低级别的信息;默认 off; | 否 |
logFlushFreq | 日志刷盘频率;单位 s,有效值范围 0~2147483647;默认 60; | 否 |
statEnable | 是否启用状态监控;取值 1/0 或 true/false;默认 false; | 否 |
statDir | 状态监控信息以文本文件形式输出的目录,默认为 jvm 当前工作目录; | 否 |
statFlushFreq | 状态监控统计信息写文件刷盘频率;单位 s,有效值范围0~2147483647;0 表示不写文件;默认 10; | 否 |
statSlowSqlCount | 统计慢 sql top 行数;有效值范围 0~1000;默认 100; | 否 |
statHighFreqSqlCount | 统计高频 sql top 行数;有效值范围 0~1000;默认 100; | 否 |
statSqlMaxCount | 状态监控可以统计不同 sql 的个数;有效值范围 0~100000;默认 100000; | 否 |
statSqlRemoveMode | 执行的不同 sql 个数超过 statSqlMaxCount 时使用的淘汰方式;取值 latest/eldest;latest 表示淘汰最近执行的 sql,eldest表示淘汰最老的 sql;默认 eldest; | 否 |
dmsvcconf | 指定 url 属性配置文件所在路径; | 否 |
dbAliveCheckTimeout | 检测数据库是否存活的连接超时时间,如果该时间内未连接成 功 即 认 为 数 据 库 故 障 ; 单 位 ms ,有效值 范 围1~2147483647;默认 10000; | 否 |
check_freq | 服务名连接数据库时,循环检测连接是否需要重置的时间间隔。即每隔一段时间,当连接对象发生改变,JDBC 连接会自动重置到新对象。单位 ms,有效值范围 0~2147483647。默认值300000 | 否 |
3.2 DM 扩展连接属性
-
除了标准 JDBC 接口功能,DM 扩展了一些具有自身特点的功能处理特性,这些特性可以通过在连接串上设置连接属性进行控制。
连接串的书写格式有以下两种: -
host、port 不作为连接属性,此时只需输入值即可。
格式:
jdbc:dm [: //host][:port][?propName1=propValue1][& propName2=propValue2]….
注:
1) 若 host 不设置,则默认为‘localhost’
2) 若 port 不设置,则默认为‘5236’
3) 若 host 不设置,则 port 一定不能设
4) 若 user、password 没有单独作为参数传入,则必须在连接属性中传入
5) 若 host 为 ipv6 地址,则应包含在[]中
例:
jdbc:dm://192.168.0.96:5236?LobMode=1
- host、port 作为连接属性,此时必须按照表 4.1 中说明进行设置,且属性名称大小
写敏感。
格式:
jdbc:dm:// [?propName1=propValue1] [ & propName2=propValue2] [&…]…
注:
1) host、port 设置与否,以及在属性串中的位置没有限制
2) 若 user、password 没有单独作为参数传入,则必须在连接属性中传入
例:
jdbc:dm:// ?host=192.168.0.96&port=5236
4 达梦数据库学习使用列表
达梦数据库介绍-达梦数据库安装-达梦数据库优化
达梦数据库开发版下载 - - 点击跳转
达梦数据库历史版本集 - - 点击跳转
达梦数据库问题提问 - - 点击跳转
达梦数据库技术分享 - - 点击跳转
1 DM8:达梦数据库安装
1.1 Windows环境达梦数据库安装
1.2 Linux环境达梦数据库安装条件–GLIBC版本要求
1.3 Linux环境达梦数据库安装
1.4 DM8:达梦数据库初始化后第一次启动关闭日志
1.5 Linux环境达梦数据库程序卸载
1.6 Linux DM8:单库单实例搭建本地数据守护服务
1.7 DM8:达梦数据库通过SQL关闭数据库实例服务
1.8 DM8:达梦数据库数据文件与日志文件介绍
2 DM8达梦数据库:初始化数据库实例-命令行工具 dminit
4 达梦数据库的优化
4.1 DM8:DMSQL执行计划操作符说明
6 达梦数据库备份与还原
6.1 DM8:达梦数据库开启归档配置
6.2 DM8:达梦数据库定时自动全库备份与删除备份
6.3 DM8:达梦数据库备份还原
6.4 DM8:达梦数据库备份还原到指定时间
6.5 DM8:dexp&dimp-逻辑备份- - 逻辑导出 - - 逻辑导入
6.6 DM8:达梦数据库定时自动dexp 逻辑备份数据库dmp文件
6.7 DM8:逻辑备份dimp 导入dmp文件报错:无效的模式名
7 DM8:达梦数据库关键字与错误码
7.1 DM8:达梦数据库关键字介绍
7.2 DM8:达梦数据库系统错误码信息
7.2.1 DM8:错误码信息-DM8.1-1-88-20.06.24-123627-ENT
7.2.2 DM8:错误码信息-DM8.1-3-12-2023.04.17-187846-20040-ENT
8 达梦数据库常用sql 总结
8.1 达梦数据库常用sql语法总结-持续更新
8.2 DM8:统计达梦数据库每个用户数据总量
8.3 DM8达梦数据库:sql查询当前登录用户相关信息
8.4 DM8达梦数据库:达梦数据库分区表创建
8.5 DM8:查询达梦数据库表空间–数据文件使用大小/扩容限制
8.6 DM8:达梦数据库自动备份某张表-配置定时作业备份某张表
8.7 DM8:达梦数据库SQL快速创建用户-非DM8.2环境
10 达梦数据库服务名配置与JDBC连接配置
10.1 DM8:达梦数据库-服务名配置dm_svc.conf
10.2 DM8:达梦数据库JDBC连接串配置
10.3 DM8:达梦数据库JDBC连接串配置开启JDBC日志
10.4 DM8:Jmeter连接达梦数据库
11 DM8:达梦数据库集群
11.1 DM8:达梦数据库–读写分离集群搭建
11.1.1 DM8:读写分离/主备集群–恢复备库数据不同步的问题
11.1.2 DM8:达梦数据库读写分离/主备集群停启维护
11.1.3 DM8:达梦数据库主备读写集群监视器命令介绍
11.2 DM8:达梦数据库 DMMPP搭建(非主备模式)
11.3 DM8:DMDSC共享存储集群搭建
11.3.1 共享存储绑定
11.3.2 配置文件准备
11.3.3 数据库实例初始化
11.4 DM8:达梦数据库DEM搭建 - - 部署集群
11.4.1 DM8:达梦数据库DEM部署说明(详细步骤)
11.4.2 DM8:达梦数据库DEM–dmagent监控服务器代理部署(详细步骤)
11.4.3 DM8:达梦数据库DEM搭建 - - 部署读写分离集群
13 DM8:达梦数据库-DTS迁移工具
13.1 DMDTS:DM迁移到DM
13.2 DMDTS:DM迁移到SQL脚本
13.3 DMDTS:SQL脚本迁移到DM
13.4 DMDTS:异构数据库数据类型默认映射关系
13.5 DMDTS:迁移同构-异构数据库-数据类型映射修改
13.6 表结构比对:达梦数据库多个库之间的表结构查询
13.7 数据比对: 查询数据库登陆用户的每张表数据量
13.8 数据比对:统计达梦数据库每个用户数据总量(不包含SYSDBA,SYS模式里面的对象)
13.9 DMDTS报错:unknown initial character set index 45
13.10 DMDTS迁移:与SqlServer数据库适配varchar(max)
13.11 DM8:达梦数据库dmfldr-快速装载-载入
14 DM8:达梦数据库LICENSE 授权替换
14.1 DM8:达梦数据库替换授权遇到的错误
16 DM8:达梦数据库慢,卡,问题分析
16.1 DM8:达梦数据库-锁超时定位问题
16.2 DM8:确定高负载的 SQL
16.3 DM8:生成DM AWR报告
16.4 DM8:达梦数据库开启SQL日志sqllog
16.5 DM8:oracle迁移到DM,递归层次查询慢的问题
16.6 DM8:执行计划操作符说明
17 DM8:达梦数据库遇到的错误汇总
17.1 DM8:达梦数据库报:回滚记录版本太旧,无法获取用户记录
17.2 DM8:达梦数据库datetime类型查询遇到的问题
17.3 DM8:达梦数据库REDO日志损坏修复 - - 启动报错 CODE=-723
17.4 DM8:达梦数据库系统处于MOUNT状态
17.5 DM8:达梦数据库报无效的表名MLOG$_
17.6 DM8:达梦数据库执行SQL报记录超长
17.7 DM8:达梦数据库无效的语句句柄
17.8 DM8:达梦数据库备份用的管道服务dmapservice无法启动
17.9 DM8:达梦数据库备份还原报错-文件已存在 -4558 file exists
17.10 DM8:达梦数据库报错 当前服务器版本不支持该功能,请联系经销商升级服务器
17.11 DM8:达梦数据库日志报错cmd 90 validate error!
18 DM8:达梦数据库宕机问题分析
18.1 DM8:达梦数据库宕机问题分析调试gdb dmserver core
18.2 DM8:达梦数据库宕机版本记录汇总(持续更新中)