Bei Verwendung von WebSphere MQ Version 6 und XA-Koordination oder von 64-Bit-Ausführungsgruppen müssen Sie ein 64-Bit-ODBC-
Datenquellennamen
konfigurieren. Stellen Sie sicher, dass die regulären 64-Bit-Datenbankbibliotheken in die Umgebungsvariable MQSI_LIBPATH64 eingeschlossen werden, damit die regulären 64-Bit-Datenbankbibliotheken enthalten sind.
Die Datenbanken mit XA-Koordination müssen in der Zeilengruppendatei ODBCINI64 aufgeführt sein, damit WebSphere MQ die XA-Koordination ausführen kann.
WebSphere MQ Version 6 unterstützt 64-Bit-Umgebungen.
Unter UNIX gibt es keinen ODBC-Administrator oder Treibermanager. Um Definitionen des ODBC-Datenquellennamens zu konfigurieren, müssen Sie die erforderlichen Systeminformationen bearbeiten, die sich in einer Textdatei namens odbc64.ini befinden.
Stellen Sie die Umgebungsvariable ODBCINI64 mit Angabe des vollständigen Pfads und des Dateinamens so ein, dass sie auf diese Datei zeigt. Wenn Sie diese Variable nicht setzen, wird der Standardwert $MQSI_REGISTRY/odbc/odbc64.ini für den Pfad verwendet. Dieser wird bei der Installation von WebSphere Message Broker erstellt. Die Datei muss über das Eigentumsrecht an der Datei mqm:mqbrkrs verfügen.
Es wird eine Beispielschablone in Form einer Datei <Installationsverzeichnis>/DD64/odbc64.ini zur Verfügung gestellt. Diese Datei enthält Beispiele für die Konfiguration eines Datenquellennamens (data source name, DSN), der sich in den von WebSphere Message Broker unterstützten Datenbanken befindet. Die Dateien mit den Beispielschablonen werden für jede unterstützte Plattform unten aufgeführt. Sie zeigen die empfohlene Konfiguration für die unterstützten Datenbanken auf.
Die Einträge in den Zeilengruppen, die Sie Ihren lokalen Erfordernissen entsprechend konfigurieren müssen, werden in Kursivschrift angezeigt (diese Einträge werden im Abschnitt ODBC.ini-Parameter beschrieben). Sie müssen alle angezeigten Einträge beibehalten, können jedoch eine vollständige Zeilengruppe löschen, wenn diese für Ihre Konfiguration nicht erforderlich ist (wenn Sie beispielsweise eine Oracle-Datenbank verwenden, können Sie die Zeilengruppen für DB2 und Sybase löschen).
Erstellen Sie eine Kopie der Standarddatei, setzen Sie die Variable ODBCINI64 so, dass auf diese Kopie verwiesen wird, und nehmen Sie alle erforderlichen Änderungen an der kopierten Datei und nicht an der Standarddatei vor.
Stellen Sie sicher, dass die entsprechende Umgebungsvariable für den Suchpfad der Bibliothek (LD_LIBRARY_PATH unter Solaris) so gesetzt ist, dass die benannten Datenbankprodukte verwendet werden. Weitere Informationen finden Sie in der Produktdokumentation.
Bei Verwendung von Linux (zSeries-Plattform) oder Linux (POWER-Plattform) muss keine ODBC-Verbindung definiert werden. In diesem Fall ist der im Nachrichtenfluss verwendete Name der Datenquelle mit dem DB2-Aliasnamen der Datenbank identisch.
Wenn Sie unter AIX DB2-Datenbanken verwenden, sind für einen einzelnen Prozess höchstens 10 Verbindungen zulässig, die gemeinsam genutzten Speicher verwenden. Wenn Sie also mehr als einen oder zwei Nachrichtenflüsse gleichzeitig implementieren, schlägt möglicherweise die Verbindung fehl, und es wird die DB2-Fehlernachricht SQL1224N angezeigt. Die Verbindungsfehler werden von der Ausführungsgruppe des Brokers gemeldet und in das Systemprotokoll eingetragen. Um dieses Problem zu vermeiden, können Sie den TCP/IP-Modus zum Herstellen einer Verbindung zu DB2 verwenden. Weitere Informationen hierzu finden Sie im Abschnitt Beim Verbinden mit DB2 wird die DB2-Fehlernachricht SQL1224N ausgegeben.
Hier ein Beispiel für die Informationen in odbc64.ini:
[ODBC Data Sources] WBRKBKDB=IBM DB2 ODBC Driver MYDB=IBM DB2 ODBC Driver ORACLEDB=DataDirect 5.0 64bit Oracle Wire Protocol SYBASEDB=DataDirect 5.0 64bit Sybase Wire ProtocolSQLSERVERDB
=DataDirect 5.0 64bit SQL Server Wire Protoco
INFORMIXDB
=IBM Informix ODBC Driver
[WBRKBKDB] Driver=libdbWrapper64.so Description=WBRKBKDB DB2 ODBC Database Database=WBRKBKDB
[MYDB] Driver=libdbWrapper64.so Description=MYDB DB2 ODBC Database Database=MYDB
[ORACLEDB] Driver=<Installationsverzeichnis>/DD64/lib/UKora20.so Description=DataDirect 5.0 Oracle Wire Protocol HostName=<Name des Oracle-Servers> PortNumber=<Port, an dem Oracle auf Hostname empfangsbereit ist> SID=<Oracle-SID> CatalogOptions=0 ProcedureRetResults=1 EnableStaticCursorForLongData=0 ApplicationUsingThreads=1 EnableDescribeParam=1 OptimizePrepare=1 WorkArounds=536870912
[SYBASEDB]
Driver=<Installationsverzeichnis>/DD64lib/UKase20.so
Description=DataDirect 5.0 Sybase Wire Protocol
Database=<sybasedb>
ApplicationsUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=<Servername,Portnummer>
SelectUserName=1
[SQLSERVERDB] Driver=<Installationsverzeichnis>/DD64/lib/UKmsss20.so Description=DataDirect 5.0 SQL Server Wire Protocol Address=<SQLServer-Host>,<SQLServer-Port> AnsiNPW=Yes Database=<Name_der_Datenbank> QuoteId=No
[INFORMIXDB]
Driver=<Informix-Clientverzeichnis>/lib/cli/iclit09b.so
Description=IBM Informix ODBC Driver
ServerName=<Servername>
Database=<Datenquelle>
[ODBC] Trace=0 TraceFile=<Verzeichnis mit viel freiem Speicherbereich>/odbctrace.out TraceDll=<Installationsverzeichnis>/DD64/lib/odbctrac.so InstallDir=<Installationsverzeichnis>/DD64 UseCursorLib=0 IANAAppCodePage=4UNICODE=UTF-8
[ODBC Data Sources] WBRKBKDB=IBM DB2 ODBC Driver MYDB=IBM DB2 ODBC Driver ORACLEDB=DataDirect 5.0 64bit Oracle Wire Protocol SYBASEDB=DataDirect 5.0 64bit Sybase Wire ProtocolSQLSERVERDB
=DataDirect 5.0 64bit SQL Server Wire Protocol
INFORMIXDB
=IBM Informix ODBC Driver
[WBRKBKDB] Driver=libdb2Wrapper64.sl Description=WBRKBKDB DB2 ODBC Database Database=WBRKBKDB
[MYDB] Driver=libdb2Wrapper64.sl Description=MYDB DB2 ODBC Database Database=MYDB
[ORACLEDB]
Driver=<Installationsverzeichnis>/DD64/lib/UKora20.sl
Description=DataDirect 5.0 Oracle Wire Protocol
HostName=<Name des Oracle-Servers>
PortNumber=<Port, an dem Oracle auf Hostname empfangsbereit ist
SID=<Oracle-SID>
CatalogOptions=0
ProcedureRetResults=1
EnableStaticCursorForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
[SYBASEDB] Driver=<Installationsverzeichnis>/DD64/lib/UKase20.sl Description=DataDirect 5.0 Sybase Wire Protocol Database=<sybasedb> ApplicationUsingThreads=1 EnableDescribeParam=1 OptimizePrepare=1 SelectMethod=0 NetworkAddress=<Servername,Portnummer> SelectUserName=1
[SQLSERVERDB] Driver=<Installationsverzeichnis>/DD64/lib/UKmsss20.sl Description=DataDirect 5.0 SQL Server Wire Protocol Address=<SQLServer-Host>,<SQLServer-Port> AnsiNPW=Yes Database=<Name_der_Datenbank> QuoteId=No
[INFORMIXDB]
Driver=<Informix-Clientverzeichnis>/lib/cli/iclit09b.sl
Description=IBM Informix ODBC Driver
ServerName=<Servername>
Database=<Datenquelle>
[ODBC] Trace=0 TraceFile=<Verzeichnis mit viel freiem Speicherbereich>/odbctrace.out TraceDll=<Installationsverzeichnis>/DD64/lib/odbctrac.sl InstallDir=<Installationsverzeichnis>/DD64 UseCursorLib=0 IANAAppCodePage=4UNICODE=UTF-8
[ODBC Data Sources] WBRKBKDB=IBM DB2 ODBC Driver MYDB=IBM DB2 ODBC Driver ORACLEDB=DataDirect 5.0 64bit Oracle Wire Protocol SYBASEDB=DataDirect 5.0 64bit Sybase Wire ProtocolSQLSERVERDB
=DataDirect 5.0 64bit SQL Server Wire Protocol
INFORMIXDB
=IBM Informix ODBC Driver
[WBRKBKDB] Driver=libdb2Wrapper64.so Description=WBRKBKDB DB2 ODBC Database Database=WBRKBKDB
[MYDB] Driver=libdb2Wrapper64.so Description=MYDB DB2 ODBC Database Database=MYDB
[ORACLEDB]
Driver=<Installationsverzeichnis>/DD64/lib/UKor820.so
Description=DataDirect 5.0 Oracle Wire Protocol
HostName=<Name des Oracle-Servers>
PortNumber=<Port, an dem Oracle auf Hostname empfangsbereit ist
SID=<Oracle-SID>
CatalogOptions=0
ProcedureRetResults=1
EnableStaticCursorForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
[SYBASEDB] Driver=<Installationsverzeichnis>/DD64/lib/UKase20.so Description=DataDirect 5.0 Sybase Wire Protocol Database=<sybasedb> ServerName=<Servername> ApplicationUsingThreads=1 EnableDescribeParam=1 OptimizePrepare=1 SelectMethod=0 NetworkAddress=<Servername,Portnummer> SelectUserName=1
[SQLSERVERDB] Driver=<Installationsverzeichnis>/DD64/lib/UKmsss20.so Description=DataDirect 5.0 SQL Server Wire Protocol Address=<SQLServer-Host>,<SQLServer-Port> AnsiNPW=Yes Database=<Name_der_Datenbank> QuoteId=No
[INFORMIXDB]
Driver=<Informix-Clientverzeichnis>/lib/cli/iclit09b.so
Description=IBM Informix ODBC Driver
ServerName=<Servername>
Database=<Datenquelle>
[ODBC] Trace=0 TraceFile=<Verzeichnis mit viel freiem Speicherbereich>/odbctrace.out TraceDll=<Installationsverzeichnis>/DD64/lib/odbctrac.so InstallDir=<Installationsverzeichnis>/DD64 UseCursorLib=0 IANAAppCodePage=4UNICODE=UTF-8