在 UNIX 系统上配置 32 位 ODBC 数据源

在 UNIX 环境中没有 ODBC 管理程序或驱动程序管理器。要配置 ODBC 数据源名称 (DSN) 定义,您必须编辑必需的系统信息,这些信息保存在一个名为 .odbc.ini(请注意,此文件名以句点开头)的纯文本文件中。

ODBCINI 环境变量设置为指向该文件,并指定完整路径和文件名。如果不设置该变量,则对 32 位执行组使用缺省路径 $MQSI_REGISTRY/odbc/.odbc.ini(安装 WebSphere Event Broker 时创建它)。该文件必须具有 mqm:mqbrkrs 的文件许可权。

支持的每个数据库中的 DSN 的示例。以文件 <install_dir>/merant/odbc.ini 的形式提供一个样本模板,其中包含如何配置驻留在 WebSphere Event Broker 支持的每个数据库中的 DSN 的示例。以下显示了用于支持的平台的样本模板文件。这些描述说明了对各种支持数据库的建议配置。

在各个节中,用斜体显示那些必须进行配置以与本地要求相匹配的各个条目(这些条目的描述位于ODBC.ini 参数中)。所有显示的条目都必须保留,但在配置不需要的情况下,您可以除去整个节(例如,如果您使用 Oracle 数据库,则可除去对于 DB2 和 Sybase 显示的各个节)。

为缺省文件创建一个副本,将 ODBCINI 设置为指向该副本,并对创建的副本而不是缺省文件做出任何更改。

确保已设置适当的库搜索路径环境变量(在 Solaris 和 Linux(x86 平台)上是 LD_LIBRARY_PATH),以反映出要使用的数据库产品。请参阅数据库产品文档以了解更多详细信息。

更新开始如果您使用的是 Linux(zSeries 平台)Linux(POWER 平台),则无需定义 ODBC 连接。而消息流中使用的数据源名称即为数据库的 DB2 别名。更新结束

更新开始如果您使用的是 64 位 DB2 实例,请确保将 <DB2 instance directory>/sqllib/lib32 添加至库搜索路径环境变量的开头。如果使用的是 64 位 Oracle 实例,则确保将 $ORACLE_HOME/lib32 添加到库搜索路径环境变量的开始处。如果使用的是 64 位执行组,则确保将环境变量 MQSI_LIBPATH64 设置为包括常规 64 位数据库。更新结束

更新开始如果您使用的是 WebSphere MQ V6,请根据您的操作环境参阅《WebSphere MQ 快速入门》一书中『64 位队列管理器的含义』一节。更新结束

在 AIX 上,如果要将 DB2 用作数据库,则单个过程允许最多 10 个连接使用共享内存。这表示如果您同时部署多个或两个消息流,则可能遇到表现为 DB2 错误消息 SQL1224N 的连接失败。该连接错误来自代理执行组,报告在系统日志中。要避免该问题,可使用 TCP/IP 方式连接至 DB2。有关如何执行该操作的详细说明,请参阅连接 DB2 时,系统报告 DB2 错误消息 SQL1224N

以下是 ODBC.ini 信息样本:

AIX
[ODBC Data Sources]
WBRKBKDB=IBM DB2 ODBC Driver
MYDB=IBM DB2 ODBC Driver
ORACLEDB=DataDirect 5.0 Oracle
SYBASEDB=DataDirect 5.0 Sybase Wire Protocol
更新开始SQLSERVERDB更新结束=DataDirect 5.0 SQL Server Wire Protocol
更新开始INFORMIXDB更新结束=IBM Informix ODBC Driver
[WBRKBKDB]
Driver=/u/db2inst1/sqllib/lib/libdb2.a
Description=WBRKBKDB DB2 ODBC Database
Database=WBRKBKDB
[MYDB]
Driver=/u/db2inst1/sqllib/lib/libdb2.a
Description=MYDB DB2 ODBC Database
Database=MYDB
[ORACLEDB]
Driver=<Your installation directory>/merant/lib/UKor820.so
Description=DataDirect 5.0 Oracle
ServerName=<YourServerName>
EnableDescribeParam=1
OptimizePrepare=1
ProcedureRetResults=1
WorkArounds=536870912
[SYBASEDB]
Driver=<Your installation directory>/merant/lib/UKase20.so
Description=DataDirect 5.0 Sybase Wire Protocol
Database=<Your Database Name>
ServerName=<YourServerName>
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=<YourServerName,YourPortNumber>
SelectUserName=1 
更新开始
[SQLSERVERDB]
Driver=<Your installation directory>/merant/lib/UKmsss20.so
Description=DataDirect 5.0 SQL Server Wire Protocol
Address=<Your SQLServer host>,<your SQLServer post>
AnsiNPW=Yes
Database=<Your Database Name>
QuoteId=No
更新结束 更新开始
[INFORMIXDB]
Driver=<Your Informix Client directory>/lib/cli/iclit09b.so
Description=IBM Informix ODBC Driver
ServerName=<Your server name>
Database=<Your Datasource>
更新结束
[ODBC]
Trace=0
TraceFile=<A directory with plenty of free space>/odbctrace.out
TraceDll=<Your installation directory>/merant/lib/odbctrac.so
InstallDir=<Your installation directory>/merant
UseCursorLib=0
IANAAppCodePage=4UNICODE=UTF-8
HP-UX
[ODBC Data Sources]
WBRKBKDB=IBM DB2 ODBC Driver
MYDB=IBM DB2 ODBC Driver
ORACLEDB=DataDirect 5.0 Oracle
SYBASEDB=DataDirect 5.0 Sybase Wire Protocol
更新开始SQLSERVERDB更新结束=DataDirect 5.0 SQL Server Wire Protocol
更新开始INFORMIXDB更新结束=IBM Informix ODBC Driver
[WBRKBKDB]
Driver=/u/db2inst1/sqllib/lib/libdb2.sl
Description=WBRKBKDB DB2 ODBC Database
Database=WBRKBKDB
[MYDB]
Driver=/u/db2inst1/sqllib/lib/libdb2.sl
Description=MYDB DB2 ODBC Database
Database=MYDB
[ORACLEDB]
Driver=<Your installation directory>/merant/lib/UKor820.sl
Description=DataDirect 5.0 Oracle
ServerName=<YourServerName>
EnableDescribeParam=1
OptimizePrepare=1
ProcedureRetResults=1
WorkArounds=536870912
[SYBASEDB]
Driver=<Your installation directory>/merant/lib/UKase20.sl
Description=DataDirect 5.0 Sybase Wire Protocol
Database=<Your Database Name>
ServerName=<YourServerName>
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=<YourServerName,YourPortNumber>
SelectUserName=1 
更新开始
[SQLSERVERDB]
Driver=<Your installation directory>/merant/lib/UKmsss20.sl
Description=DataDirect 5.0 SQL Server Wire Protocol
Address=<Your SQLServer host>,<your SQLServer post>
AnsiNPW=Yes
Database=<Your Database Name>
QuoteId=No
更新结束 更新开始
[INFORMIXDB]
Driver=<Your Informix Client directory>/lib/cli/iclit09b.sl
Description=IBM Informix ODBC Driver
ServerName=<Your server name>
Database=<Your Datasource>
更新结束
[ODBC]
Trace=0
TraceFile=<A directory with plenty of free space>/odbctrace.out
TraceDll=<Your installation directory>/merant/lib/odbctrac.sl
InstallDir=<Your installation directory>/merant
UseCursorLib=0
IANAAppCodePage=4UNICODE=UTF-8
Linux(x86 平台)
[ODBC Data Sources]
WBRKBKDB=IBM DB2 ODBC Driver
MYDB=IBM DB2 ODBC Driver
ORACLEDB=DataDirect 5.0 Oracle
SYBASEDB=DataDirect 5.0 Sybase Wire Protocol
更新开始SQLSERVERDB更新结束=DataDirect 5.0 SQL Server Wire Protocol
更新开始INFORMIXDB更新结束=IBM Informix ODBC Driver
[WBRKBKDB]
Driver=/u/db2inst1/sqllib/lib/libdb2.so
Description=WBRKBKDB DB2 ODBC Database
Database=WBRKBKDB
[MYDB]
Driver=/u/db2inst1/sqllib/lib/libdb2.so
Description=MYDB DB2 ODBC Database
Database=MYDB
[ORACLEDB]
Driver=<Your installation directory>/merant/lib/UKor820.so
Description=DataDirect 5.0 Oracle
ServerName=<YourServerName>
EnableDescribeParam=1
OptimizePrepare=1
ProcedureRetResults=1
WorkArounds=536870912
[SYBASEDB]
Driver=<Your installation directory>/merant/lib/UKase20.so
Description=DataDirect 5.0 Sybase Wire Protocol
Database=<Your Database Name>
ServerName=<YourServerName>
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=<YourServerName,YourPortNumber>
SelectUserName=1 
更新开始
[SQLSERVERDB]
Driver=<Your installation directory>/merant/lib/UKmsss20.so
Description=DataDirect 5.0 SQL Server Wire Protocol
Address=<Your SQLServer host>,<your SQLServer post>
AnsiNPW=Yes
Database=<Your Database Name>
QuoteId=No
更新结束 更新开始
[INFORMIXDB]
Driver=<Your Informix Client directory>/lib/cli/iclit09b.so
Description=IBM Informix ODBC Driver
ServerName=<Your server name>
Database=<Your Datasource>
更新结束
[ODBC]
Trace=0
TraceFile=<A Directory with plenty of free space>/odbctrace.out
TraceDll=<Your installation directory>/merant/lib/odbctrac.so
InstallDir=<Your installation directory>/merant
UseCursorLib=0
IANAAppCodePage=4UNICODE=UTF-8
Solaris
[ODBC Data Sources]
WBRKBKDB=IBM DB2 ODBC Driver
MYDB=IBM DB2 ODBC Driver
ORACLEDB=DataDirect 5.0 Oracle
SYBASEDB=DataDirect 5.0 Sybase Wire Protocol
更新开始SQLSERVERDB更新结束=DataDirect 5.0 SQL Server Wire Protocol
更新开始INFORMIXDB更新结束=IBM Informix ODBC Driver
[WBRKBKDB]
Driver=/u/db2inst1/sqllib/lib/libdb2.so
Description=WBRKBKDB DB2 ODBC Database
Database=WBRKBKDB
[MYDB]
Driver=/u/db2inst1/sqllib/lib/libdb2.so
Description=MYDB DB2 ODBC Database
Database=MYDB
[ORACLEDB]
Driver=<Your installation directory>/merant/lib/UKor820.so
Description=DataDirect 5.0 Oracle
ServerName=<YourServerName>
EnableDescribeParam=1
ProcedureRetResults=1
OptimizePrepare=1
WorkArounds=536870912
[SYBASEDB]
Driver=<Your installation directory>/merant/lib/UKase20.so
Description=DataDirect 5.0 Sybase Wire Protocol
Database=<Your Database Name>
ServerName=<YourServerName>
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=<YourServerName,YourPortNumber>
SelectUserName=1 
更新开始
[SQLSERVERDB]
Driver=<Your installation directory>/merant/lib/UKmsss20.so
Description=DataDirect 5.0 SQL Server Wire Protocol
Address=<Your SQLServer host>,<your SQLServer post>
AnsiNPW=Yes
Database=<Your Database Name>
QuoteId=No
更新结束 更新开始
[INFORMIXDB]
Driver=<Your Informix Client directory>/lib/cli/iclit09b.so
Description=IBM Informix ODBC Driver
ServerName=<Your server name>
Database=<Your Datasource>
更新结束
[ODBC]
Trace=0
TraceFile=<A Directory with plenty of free space>/odbctrace.out
TraceDll=<Your installation directory>/merant/lib/odbctrac.so
InstallDir=<Your installation directory>/merant
UseCursorLib=0
IANAAppCodePage=4UNICODE=UTF-8
相关任务
在 Linux 和 UNIX 系统上创建 DB2 数据库
在 UNIX 系统上准备数据库
定制 DB2 数据库
相关参考
受支持的数据库
声明 | 商标 | 下载 | | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后更新:2006/05/19
ah14444_