神通数据源可添加的选项配置

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:完整协议日志