连接字符串

  1. 连接字符串格式

连接字符串以键值对的形式,用分号';'分割. 例如

Server=10.1.203.25;Port=2003;User Id=SYSDBA;Password=szoscar55;Database=OSRDB;
  1. 关键词对应表
连接字符串关键词不区分大小写!
关键词 名称
HOST,SERVER,DATA SOURCE 服务器的地址
PORT 连接端口(默认2003)
DATABASE,DB,INITIAL CATALOG 数据库的名称(默认为用户名)
USERNAME,USER NAME,
USER,USERID,USER ID,UID
连接用户名称
PASSWORD,PSW,PWD 用户密码
SSL (true,false,yes,no,0,1) SSL安全连接(默认:False)
SSLMODE(允许(Allow)或禁用(Disable)) 连接SSL模式控制 (默认为Disable)
ENCODING 编码方式 (操作系统)
TIMEOUT 连接打开可等待时间(默认15s)
CONNECTIONLIFETIME 允许未使用等待连接(默认15s)
COMMANDTIMEOUT 命令执行后等待数据库响应超时时间 (默认0s 代表不超时)
POOLING 使用数据库连接池(默认:True)
MAXPOOLSIZE 数据库连接池最大连接数(1000)
MINPOOLSIZE 数据库连接池最小连接数(1)
STMTROLLBACK 事务回滚方式(事务级别0,语句级别1,默认0)
PROTOCOLTYPE 协议类型,区分新旧协议(默认4)
FETCHSIZE 一次从数据库获取的结果集行数(默认50)
USEOBSOLETEPROTOCOL 驱动是否直接使用旧协议(默认false)
LOGLEVEL 开启日志级别 (日志级别,分为: 0,1,2,3,4, 5, 6, 7级, 默认3)
LOGDIR,LOGDIRPATH,
LOGDIRECTORY,LOGDIRECTORYPATH
设置LOG文件目录路径(默认值 当前项目根目录下logs)
LOGFILE,LOGFILENAME 设置LOG文件默认名称(默认值 oscar_log)
LOGEXT,LOGFILEEXT,
LOGEXTNAME LOGFILEEXTENSIONNAME
设置LOG文件默认扩展名称(默认值 txt)
LOGFILEMAXSIZE 设置LOG文件默认记录的最大数量(默认值100000条记录,大约10M)
KEEPALIVED 驱动是否启动keepalive功能(默认true)
KEEPALIVEINTERVAL
keepalive检测包发送间隔时间如果发送检测包后没有
回应等待间隔时间后再次发送检测包(默认75000 ms)
KEEPALIVEWAIT
keepalive等待时间,该时间内没有socket操作则发送检测包
(默认3000000 ms)
BATCHBUFFERSIZE 批量执行的缓存大小(最大值1024mb,最小值 1mb,默认10mb)
EXECUTEBATCHSIZE
普通execute语句一次执行次数达到多少可以走batch协议
(最大值5000,最小值1,表示不走Batch协议,默认值 100)
NETWORKDATABYSTRING
数据格式是采用字符串方式传输还是采用协议的方式传输
(默认false采用协议方式传输)
DECIMALDATABYSTRING
小数的类型,如float、double、numeric、decimal是否
按字符串格式传输(默认true)
PREPARECACHESIZE
prepareCacheSize:preparedStatement 缓存,
当prepareCacheSize>0时,
该功能将启用,缓存中preparedStatement
个数为prepareCacheSize个s数(默认 0)
PREPAREEXECUTEQUERY
不带参数的prepare语句是否可以直接
走query协议执行sql语句(默认true)
RW,READWRITE,DISPATCH,DISTRIBUTED
开启读写分离模式(默认 false)
WAITSYNCREAD
读写分离读备机时是否
等待备机数据同步完成(默认false)
THREADSYNCREAD
是线程级lsn true(使用线程级lsn仅保证可以查询到同一个
线程之前的更新事务所做的修改),全局 lsn false
(使用全局lsn保证可以查询到所
有线程之前的更新事务所做的修改)(默认true)
SLAVEDELAYINTERVA
在备机查询不到最新数据的情况下,
一段时间之内不再尝试向备机发送查询语句(默认0ms)
MASTERLOADRATE
分发时主机负载率0-100(默认0)
REQUIREDSYNCREDO
读操作是否可以分发到非强制同步备机,
默认是false表示可以分发。强制同步
备机是指数据库配置参数
ENABLE_HA_SLAVE_SYNC_REDO为TURE的同步备机
(默认false)
TRANSACTIONSTRATEGY
1 事务中的所有语句都分发到主机;
2 务开始的读语句可以分发到备机,一旦出现写语句
后面的语句都分发到主机(默认2)
DIAGNOSIS,DIAGNOSTIC,
DIAGNOSISENABLED,DIAGNOSTICENABLED
强制开启耗时诊断记录(默认false)
AUTHMETHOD,AUTHENTICATIONMETHOD
0 兼容旧驱动认证方式;
1 代表支持 MD5 认证方式;
2 代表支持 SCRAM 认证方式;
3 代表支持 MD5 和 SCRAM 认证方式;
默认支持所有认证方式
说明 :
  • 编码方式, 默认跟随操作系统编码(Encoding.Default),
    当连接字符串或环境变量(NLS_OSCAR_LANG)中配置时,优先使用(优先级 连接字符串 > 环境变量 > 操作系统).
  • 协议类型, 允许值范围分别为 1,2,3,4, 协议由小到大,新协议兼容旧协议.
  • 日志级别,分为:0,1,2,3,4, 5, 6, 7 级,
    0表示不打印日志,
    1表示整个应用中失败的消息,2表示当前操作失败的消息,3表示非严重问题的消息,
    4表示信息性消息, 5表示SQL消息, 6表示用于调试的诊断消息,
    7表示用于诊断特定问题的非常详细的诊断消息.
  • 生成日志规则:
    日志文件路径格式 {日志存放目录}/{文件名称}{日期}{编号}.{文件扩展名}
    每天生成一个新日志文件
    对于每个日志文件,记录日志数量不超过允许的最大数量(LOGFILEMAXSIZE),超过文件记录最大数量,自动切换下一个日志文件,如 oscar_log_20230425_01.txt 切换 oscar_log_20230425_02.txt....