Se si sta utilizzando WebSphere MQ Versione
6 e la configurazione XA o sono stati creati dei gruppi di esecuzione da 64 bit, è necessario
configurare un DSN (data source name) ODBC a 64-bit. Assicurarsi di impostare la variabile di ambiente MQSI_LIBPATH64 in modo da
comprendere le regolari librerie di database a 64 bit. Ad esempio, se si utilizza una istanza di
DB2 a 64 bit, assicurarsi di aggiungere la directory_istanza_DB2/sqllib/lib64
all'inizio della variabile di ambiente del percorso di ricerca delle librerie.
I database coordinati da XA devono essere contenuti nel file della stanza ODBCINI64 in modo che WebSphere MQ possa eseguire la coordinazione XA. WebSphere MQ Versione 6 supporta un ambiente a 64-bit.
Nell'ambiente UNIX, non è disponibile Amministratore ODBC o
Gestore del driver. Per configurare una definizione DSN ODBC, è necessario
modificare le informazioni di sistema richieste, contenute in un file di testo
denominato odbc64.ini.
Se si utilizza Linux (piattaforma zSeries) o Linux (piattaforma POWER), non è necessario definire una connessione ODBC. Invece, il nome di origine dati utilizzato nel flusso di messaggi è lo stesso dell'alias di DB2 del database.
Per le piattaforme UNIX,
impostare la variabile di ambiente
ODBCINI64 in modo da specificare il file, specificando
il percorso completo e il nome del file. Se tale variabile non viene impostata, per impostazione predefinita viene
utilizzato il percorso $MQSI_REGISTRY/odbc/odbc64.ini.
Occorre copiare il file odbc64.ini in questa directory e impostare la proprietà
del file su mqm:mqbrkrs.
Viene fornita una
maschera di esempio nel file
dir_install/DD64/odbc64.ini che contiene esempi
relativi alla configurazione di un DSN che risiede in ciascuno dei
database supportati da
WebSphere Message Broker. Di seguito sono visualizzate le stanze di
esempio per le piattaforme supportate. Gli esempi mostrano la configurazione consigliata per i database supportati.
Le voci nelle stanze da configurare per corrispondere ai requisiti locali sono visualizzate in corsivo (le descrizioni di tali voci sono fornite in Modifica dei parametri odbc64.ini). E' necessario conservare tutte le voci visualizzate, ma è possibile rimuovere una stanza completa se non è più necessaria nella propria configurazione (ad esempio, se si utilizza un database Oracle, è possibile rimuovere le stanze visualizzate per DB2 e Sybase).
Eseguire una copia del file predefinito, impostare ODBCINI64 in modo da puntare a tale copie ed apportare le modifiche al file copiato e non a quello predefinito.
Verificare che la variabile di ambiente del percorso di ricerca delle librerie appropriata (ad esempio, LD_LIBRARY_PATH in Solaris) sia impostata in modo da riflettere i prodotti database da utilizzare. Per ulteriori dettagli, fare riferimento alla documentazione del database.
In AIX, se si sta utilizzando un database DB2, è consentito un massimo di 10 connessioni che utilizzano memoria condivisa da un singolo processo. Ciò significa che se si distribuiscono contemporaneamente più di uno o due flussi di messaggi, potrebbero verificarsi degli errori di connessione indicati dal messaggio di errore DB2 SQL1224N. Gli errori di connessione sono riportati nella registrazione di sistema dal gruppo di esecuzione del broker. Per evitare questo problema, è possibile utilizzare la modalità TCP/IP per la connessione a DB2. Per istruzioni dettagliate, consultare Viene emesso il messaggio di errore DB2 SQL1224N durante la connessione a DB2.
Queste sono le informazioni di odbc64.ini di esempio:
[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 Protocol SQLSERVERDB=DataDirect 5.0 64bit SQL Server Wire Protocol
[WBRKBKDB] Driver=libdb2Wrapper64.so Description=WBRKBKDB DB2 ODBC Database Database=WBRKBKDB
[MYDB] Driver=libdb2Wrapper64.so Description=MYDB DB2 ODBC Database Database=MYDB
[ORACLEDB]
Driver=<directory di installazione>/DD64/lib/UKora20.so
Description=DataDirect 5.0 Oracle Wire Protocol
HostName=<Nome macchina del server Oracle>
PortNumber=<Porta su cui Oracle è in ascolto su HostName>
SID=<SID Oracle>
CatalogOptions=0
EnableStaticCursorsForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
ProcedureRetResults=1
[SYBASEDB]
Driver=<directory di installazione>/DD64lib/UKase20.so
Description=DataDirect 5.0 Sybase Wire Protocol
Database=<Your Database Name>
ApplicationsUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=<YourServerName>,<YourPortNumber>
SelectUserName=1
[SQLSERVERDB] Driver=<directory di installazione>/DD64/lib/UKmsss20.so Description=DataDirect 5.0 SQL Server Wire Protocol Address=<host SQLServer>,<porta del server SQLServer> AnsiNPW=Yes Database=<Your Database Name> QuoteId=No
[ODBC]
Trace=0
TraceFile=<A Directory with plenty of free space>/odbctrace.out
TraceDll=<directory di installazione>/DD64/lib/odbctrac.so
InstallDir=<directory di installazione>/DD64
UseCursorLib=0
IANAAppCodePage=4
UNICODE=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 Protocol SQLSERVERDB=DataDirect 5.0 64bit SQL Server Wire Protocol
[WBRKBKDB] Driver=libdb2Wrapper64.sl Description=WBRKBKDB DB2 ODBC Database Database=WBRKBKDB
[MYDB] Driver=libdb2Wrapper64.sl Description=MYDB DB2 ODBC Database Database=MYDB
[ORACLEDB]
Driver=<directory di installazione>/DD64/lib/UKora20.sl
Description=DataDirect 5.0 Oracle Wire Protocol
HostName=<Nome macchina del server Oracle
PortNumber=<Porta su cui Oracle è in ascolto su HostName
SID=<SID Oracle>
CatalogOptions=0
ProcedureRetResults=1
EnableStaticCursorsForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
[SYBASEDB]
Driver=<directory di installazione>/DD64/lib/UKase20.sl
Description=DataDirect 5.0 Sybase Wire Protocol
Database=<Your Database Name>
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=<YourServerName>,<YourPortNumber>
SelectUserName=1
[SQLSERVERDB] Driver=<directory di installazione>/DD64/lib/UKmsss20.sl Description=DataDirect 5.0 SQL Server Wire Protocol Address=<host SQLServer>,<porta del server SQLServer> AnsiNPW=Yes Database=<Your Database Name> QuoteId=No
[ODBC]
Trace=0
TraceFile=<A Directory with plenty of free space>/odbctrace.out
TraceDll=<directory di installazione>/DD64/lib/odbctrac.sl
InstallDir=<directory di installazione>/DD64
UseCursorLib=0
IANAAppCodePage=4
UNICODE=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 Protocol SQLSERVERDB=DataDirect 5.0 64bit SQL Server Wire Protocol
[WBRKBKDB] Driver=libdb2Wrapper64.so Description=WBRKBKDB DB2 ODBC Database Database=WBRKBKDB
[MYDB] Driver=libdb2Wrapper64.so Description=MYDB DB2 ODBC Database Database=MYDB
[ORACLEDB]
Driver=<directory di installazione>/DD64/lib/UKor820.so
Description=DataDirect 5.0 Oracle Wire Protocol
HostName=<Nome macchina del server Oracle
PortNumber=<Porta su cui Oracle è in ascolto su HostName
SID=<SID Oracle>
CatalogOptions=0
ProcedureRetResults=1
EnableStaticCursorsForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
[SYBASEDB]
Driver=<directory di installazione>/DD64/lib/UKase20.so
Description=DataDirect 5.0 Sybase Wire Protocol
Database=<Your Database Name>
ServerName=<YourServerName>
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=<YourServerName>,<YourPortNumber>
SelectUserName=1
[SQLSERVERDB] Driver=<directory di installazione>/DD64/lib/UKmsss20.so Description=DataDirect 5.0 SQL Server Wire Protocol Address=<host SQLServer>,<porta del server SQLServer> AnsiNPW=Yes Database=<Your Database Name> QuoteId=No
[ODBC]
Trace=0
TraceFile=<A Directory with plenty of free space>/odbctrace.out
TraceDll=<directory di installazione>/DD64/lib/odbctrac.so
InstallDir=<directory di installazione>/DD64
UseCursorLib=0
IANAAppCodePage=4
UNICODE=UTF-8
A questo punto sono stati configurati i nomi di origine dati ODBC da 64 bit su UNIX. Il passo successivo è quello di configurare l'ambiente per l'immissione dei comandi della console e per l'esecuzione del broker, in modo che possa accedere alle librerie del database richieste. Per ulteriori informazioni, consultare Impostazione dell'ambiente per l'accesso ai database.