神通数据源可添加的选项配置
windows下,通过odbc数据源管理器配置的选项最终会在注册表中形成一个配置项;
Linux环境中,odbc.ini文件中也是可以添加这些配置项的,神通的ODBC支持一下配置项:
表一:数据源基本信息
| 参数名称 |
参数意义 |
值阈范围 |
| Description |
数据源的描述 |
|
| Driver |
数据源中选择的驱动名称 |
|
| ServerName |
数据库所在IP地址 |
有效的IP地址、localhost |
| Database |
数据源中配置的数据库的名称 |
|
| Port |
数据源中配置的数据库的端口 |
|
| UserOSAuth |
是否用操作系统认证,默认为0 |
|
| UserName |
数据源中配置的数据库用户名 |
|
| ConnSettings |
设置数据源连接成功后执行的SQL语句 |
任何可正确执行的SQL |
表二:通用配置项
| 参数名称 |
参数意义 |
值阈范围 |
| UseNewNet |
是否开启新网络协议,默认为1,开启。(odbcw 默认不开启) |
0:不开启;1:开启 |
| UseOldProtocol |
是否开启旧网络协议,默认为0,不开启 |
0:不开启;1:开启 |
| UseDeclareFetch |
是否开启动态游标,默认为1,开启。 |
0:不开启;1:开启 |
| UseStaticCursor |
是否开启静态游标,默认为0,不开启。 |
0:不敏感;1:敏感 |
| CursorInsensitive |
是否启用游标敏感性,默认为1,游标敏感。 |
0:不开启;1:开启 |
| FetchBufferSize |
从数据库端预取数据行数,默认值为16 |
0~5000的整数 |
| TransFloatByStr |
浮点型的数据是否用字符串方式在网络中传输,默认为1,表示开启 |
0:不开启;1:开启 |
| Upper |
在调用Catalog函数时,是否将标志符类参数(Catalog, Schema, Table和Column的名称)转换成大写的形式。默认为0,不开启 |
0:不开启;1:开启 |
| LfConversion |
是否需要将换行符转换成回车换行,默认为0,不开启 |
0:不开启;1:开启 |
| UseServerDbType |
用于标志是否使用服务器返回的参数类型作为用户绑定的类型,默认值为1,开启。 |
0:不开启;1:开启 |
| ClientCharset |
设置ODBC的客户端字符集 |
SQL_ASCII;UTF-8;GBK;GB18030;
UNICODE;BIG5;
还有其他字符集可以设置,
常用的主要是以上几个. |
| LobPrefetchSize |
设置LOB预取的大小,默认为0,代表不预取,单位为字节数 |
大于0的整数 |
| LobColSize |
设置通过odbc元数据获取LOB列时,返回的LOB的最大长度,这个方便用户设置,如果不设置,默认返回4G,
可能会操作客户端内存分配暴涨。单位为字节数。 |
大于0的整数 |
| GetTableCat |
指示SQLTables接口返回表的信息时,是否返回数据库的名称。默认值为1,返回数据库名称。
这个参数在cognos适配中需要设置为0,否则cognos在SQL中会拼接:数据库名.模式名.表名这样的对象名称,神通数据库是不支持的。 |
0:不返回库名称;
1:返回库名称 |
| AnonPrepare |
设置后台是否支持prepare 匿名块.默认后台支持 |
0:不支持;1:支持 |
| NotRealPrepare |
prepare不会生成执行计划,而是将绑定参数拼接到参数位置,形成完整的SQL语句发送给数据库执行,默认值为0, |
0:不支持;1:支持 |
表三:网络配置
| 参数名称 |
参数意义 |
值阈范围 |
| CPTimeout |
设置连接池中的连接超时,默认值为0,无超时时间限制 |
大于0的整数 |
| CPTimeToLive |
连接池中的连接生命周期,默认值为0,生命周期无限制。 |
大于0的整数 |
| ConnResetTimeOut |
设置连接超时时重试的次数,单位为次,默认值为120 |
大于0的整数 |
| SocketBufferSize |
Socket网络的数据缓存大小设置,单位为字节,默认为4096 |
大于0的整数 |
| EnableKeepalive |
是否开启网络keepalive功能,默认值为1,代表开启。 |
0:不开启;1:开启 |
| KeepaliveCount |
keepalive探测尝试的次数,默认值为9,EnableKeepalive开启后生效。 |
大于0的整数 |
| KeepaliveIdle |
网络连接空闲的时间,单位为秒,默认值为300秒,EnableKeepalive开启后生效。 |
大于0的整数 |
| KeepaliveInterval |
两次探测的时间间隔,默认值为75秒,EnableKeepalive开启后生效 |
大于0的整数 |
表四:读写分离环境分发配置
| 参数名称 |
参数意义 |
值阈范围 |
| EnableDispatch |
是否支持分发,在读写分离环境中,通过odbc可实现自动SQL分发,默认为0,不分发。 |
0:不分发;1:分发 |
| HostPercentageOfStatement |
主节点执行查询语句的百分比,默认值为-1,表示主备各占百分之五十。读写分离环境中需要。 |
|
| SendLsnToSlave |
是否往slave发送lsn号,读写分离环境中需要。默认为0,不发送 |
0:不分发;1:分发 |
| UseAsynchronousSlave |
读操作是否可以分发到异步备机,默认为0,不分发 |
0:不分发;1:分发 |
表五:大容量导入设置
| 参数名称 |
参数意义 |
值阈范围 |
| EnableBulkDriver |
是否启用大容量导入的驱动类型 |
0:不开启;1:开启 |
| BulkBufferSize |
大容量导入时数据缓存大小,单位为MB,默认值为10 |
大于0的整数 |
表六:日志配置
| 参数名称 |
参数意义 |
值阈范围 |
| EnableLog |
是否开启ODBC级的日志打印,开启后调用odbc会生成日志,写入到LogFilePath参数指定的目录中。
默认值为0,不开启。开启会影响odbc的执行效率,建议只在开发阶段使用。 |
0:不开启;1:开启 |
| LogFilePath |
日志文件的目录,EnableLog开启后生效。 |
合法的系统路径,该路径必须存在 |
| LogFileSize |
单个日志文件的最大值,超过这个最大值则将日志进行归档,默认值为0,EnableLog开启后生效。 |
大于0的整数 |
| LogPrintLevel |
设置日志打印的级别,默认为1,EnableLog开启后生效。 |
1:SQL级日志;2:接口级日志
4:简单协议日志;8:完整协议日志 |