除了标准 JDBC 接口功能,DM 扩展了一些具有自身特点的功能处理特性,这些特性可
以通过在连接串上设置连接属性进行控制。
连接串的书写格式有以下两种:
1. 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
2. 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 JDBC 连接串属性
属性名称 |
说明 |
是否必须设 置 |
“host” |
主库地址,包括 IP 地址、localhost 或者配置文件中主库地址 列表对应的变量名,如 dm_svc.conf 中的’o2000’ |
是 |
“port” |
端口号,服务器登录端口号 |
否 |
“user” |
登录用户 |
是 |
“password” |
登录密码 |
是 |
“socketTimeout” |
套接字超时时间,默认 0 |
否 |
“escapeProcess” |
是否进行语法转义处理,默认 true,若确定使用环境中 SQL 语句不会存在需要转义处理的情况,可以将该属性设为 false , 在 一 定 程 度 上 提 交 操 作 效 率 ; 取 值 ( true/True , false/False) |
否 |
“autoCommit” |
是否自动提交,默认 true;取值(true/True,false/False) |
否 |
“maxRows” |
批量操作最大行数,默认 0 |
否 |
“rowPrefetch” |
预取行数,默认 10 |
否 |
“LobMode” |
Lob 模式,默认 1;取值(1 分批缓存到本地,2 一次将大字 段数据缓存到本地) |
否 |
“StmtPoolSize” |
语句句柄池大小,默认 15 |
否 |
“ignoreCase” |
是否忽略大小写,默认 true,取值(true/True,false/False) |
否 |
“alwayseAllowCommit” |
在自动提交开关打开时,是否允许手动提交回滚 |
否 |
“batchType” |
批处理类型,默认 1,取值(1 进行批量绑定 2 不进行批 量绑定) |
否 |
“maxCachedPstmtSize” |
缓存准备执行语句句柄的数量,默认 0 |
否 |
“appName” |
客户端应用程序名称 |
否 |
“sessionTimeout” |
会话超时时间,默认 0 |
否 |
“isCompress” |
是否压缩消息,默认 false,取值(true/True,false/False) |
否 |
“sslFilesPath” |
指定 ssl 加密文件的路径 |
否 |
“sslKeystorePass” |
指定 ssl 加密文件的指令 |
否 |
“resultSetType” |
指 定 默 认 创 建 结 果 集 类 型 , 1003—readonly , 1004—unsensitive,1005—insensitive,默认 1003 |
否 |
“kerberosLoginConfPath” |
Kerberors 认证登录配置文件路径 |
否 |
“mppLocal” |
是否 MPP 本地连接,默认 false;取值(true/True,false/False) |
否 |
“rwSeparate” |
是否使用读写分离系统,默认 false;取值(false 不使用,true 使用) |
否 |
“rwPercent” |
分发到主库的事务占主备库总事务的百分比,有效值 0~100, 默认 25 |
否 |
“dbmdChkPrv” |
编目函数是否进行权限检测,默认 false;取值(true/True, false/False) |
否 |
“isBdtaRS” |
是 否 使用 列模 式结 果 集, 默认 true ;取 值( true/True , false/False) |
否 |
“wellDistributed” |
配置的连接服务名包含多个服务器时,连接是否均匀分布, 默认 false;取值(true/True,false/False) |
否 |
“uKeyName” |
Ukey 的用户名 |
否 |
“uKeyPin” |
Ukey 的口令 |
否 |
“doSwitch” |
若使用服务名方式登录,且服务名配置了多个 ip,当连接发 生异常时是否自动切换;默认 false;取值(true/True, false/False) |
否 |
“clobAsString” |
clob 类型列调用 resultSetMetaData 的 getColumnType()映射为 Types.VARCHAR 类 型 ; 默 认 false ; 取 值 ( true/True , false/False) |
否 |
“continueBatchOnError” |
批量执行出错时是否继续执行;默认 false;取值(true/True, false/False) |
否 |
“connectTimeout” |
连接数据库超时时间,单位 ms, 默认 0 |
否 |
“columnNameUpperCase” |
列名转换为大写字母,默认 false;取值(true/True,false/False) |
否 |
“loadBalance” |
是否开启负载均衡,默认 false;取值(true/True,false/False); 使用服务名方式建立连接, 开启后可以将连接均匀分配到服 载均衡 |
否 |
“loadBalanceFreq” |
各站点会话统计频率,值越小负载切换越及时,单位 ms, 有效值范围 1~2147483647,默认 60000(1min) |
否 |
“loadBalancePercent” |
界定各站点是否均衡,值越小均衡度越好,有效值范围 1~100,默认 10 |
否 |
“rwAutoDistribute” |
读写分离系统事务分发是否由 JDBC 自动管理,默认 true,取 值(true/True,false/False)。false:事务分发由用户管理,用 户可通过设置连接上的 readOnly 属性标记事务为只读事务 |
否 |
“compatibleMode” |
兼容其他数据库, 属性值为数据库名称(例如:oracle), 支 持兼容 oracle 和 mysql |
否 |
“dbAliveCheckFreq” |
检测数据库是否存活的频率,单位 ms,默认 0;0:不检测 |
否 |
“logDir” |
日志等其他一些 JDBC 过程文件生成目录,默认值是当前工作目录 |
否 |
|
||
“logLevel” |
生成日志的级别,日志按从低到高依次如下(off:不记录; error:只记录错误日志;warn:记录警告信息;sql:记录 sql 执行信息;info:记录全部执行信息;all:记录全部),高级 别同时记录低级别的信息 |
否 |
“logFlushFreq” |
日志刷盘频率,单位 s,默认 60 |
否 |
“logBufferSize” |
日志缓冲区大小(每个缓冲区可以存放日志的条数),默认 1000 |
否 |
“logBufferPoolSize” |
日志缓冲池大小(缓冲池中包含日志缓冲区的个数),默认 3 |
否 |
“logFlusherQueueSize” |
日志刷盘线程中等待刷盘的日志缓冲区队列大小,默认 100 |
否 |
“statEnable” |
是否启用状态监控,默认 false;取值(true/True,false/False) |
否 |
“statFlushFreq” |
状态监控统计信息刷盘频率,单位 s;默认 10 |
否 |
“statSlowSqlCount” |
日志打印慢 sql top 行数,默认 100;有效值范围 0~1000 |
否 |
“statHighFreqSqlCount” |
日志打印高频 sql top 行数,默认 100;有效值范围 0~1000 |
否 |
“statSqlMaxCount” |
状态监控可以统计不同 sql 的个数,默认 100000;有效值范 围 0~100000 |
否 |
“statSqlRemoveMode” |
执行的不同 sql 个数超过 statSqlMaxCount 时使用的淘汰方 式,取值(latest/eldest);latest 淘汰最近执行的 sql,eldest 淘汰最老的 sql |
否 |
“statDir” |
状态监控信息以文本文件形式输出的目录,无默认值,若不 指定则监控信息不会以文本文件形式输出 |
否 |
评论