WebSphere Message Broker ODBC Database Extender encapsula el gestor de controladores unixODBC. Debe
establecer y configurar el intermediario para utilizarlo.
La siguiente información
es aplicable a todas las bases de datos soportadas.
Antes de empezar:
- Copie el archivo de ejemplo de odbc.ini que se proporciona en el directorio install_dir/ODBC/unixodbc/ en la ubicación que desee. Por tanto, cada ID de usuario de servicio de intermediario en el sistema puede
utilizar sus propias definiciones de DSN.
Consulte el contenido del archivo de ejemplo en
Archivos de configuración ODBC de ejemplo de WebSphere Message Broker.
Nota: Para impedir que surjan problemas con los procedimientos de copia de seguridad y restauración, recomendamos poner la copia del archivo de ejemplo
en el directorio de /var/mqsi en lugar de ponerla en el directorio inicial para el ID de usuario.
- Asegúrese de que el archivo odbc.ini tiene la propiedad de archivo de mqm:mqbrkrs y tiene los mismos permisos que el archivo de ejemplo proporcionado.
- Establezca la variable de entorno ODBCINI para que apunte a su archivo odbc.ini, especificando una vía de acceso completa y un nombre de archivo. Asegúrese de que apunta a la copia, no apunte al archivo
odbc.ini en los directorios de instalación.
- Copie el archivo de ejemplo de odbcinst.ini que se proporciona en el directorio install_dir/ODBC/unixodbc/ en la ubicación que desee. Consulte Nota: en el paso 1.
Consulte el contenido del archivo de ejemplo en
Archivos de configuración ODBC de ejemplo de WebSphere Message Broker.
- Asegúrese de que el archivo odbcinst.ini tiene la propiedad de archivo de mqm:mqbrkrs y tiene los mismos permisos que el archivo de ejemplo proporcionado.
- Establezca la variable de entorno ODBCSYSINI para que apunte al directorio que contiene el archivo odbcinst.ini, especificando un nombre de vía de acceso completa. Asegúrese de que apunta al directorio que contiene la copia, no apunte al directorio que contiene el archivo odbcinst.ini en los directorios de instalación.
- Si se está conectando a bases de datos DB2 solidDB o Informix, establezca la variable de entorno de vía de acceso de búsqueda de biblioteca para mostrar la ubicación de las bibliotecas para el gestor de bases de datos que está utilizando.
Para obtener más información sobre la vía de acceso de búsqueda de bibliotecas, pregunte al administrador de bases de datos (DBA) o consulte la documentación del gestor de bases de datos.
Las actualizaciones de la vía de acceso de búsqueda de bibliotecas no son necesarias para otras bases de datos soportadas.
- Si está utilizando una instancia de base de datos DB2 que está instalada en AIX,
un proceso individual puede realizar un máximo de 10 conexiones que utilizan una base de datos DB2 utilizando memoria compartida. Utilice la modalidad de
TCP/IP para conectar con la instancia de base de datos; consulte Se emite el mensaje de error de DB2 SQL1224N cuando se conecta a DB2.
- Edite la última stanza del archivo odbc.ini, la
stanza [ODBC], para especificar la ubicación de los controladores ODBC de DataDirect
instalados.
Para asegurarse de que edita el archivo
odbc.ini correcto, puede abrir el archivo en el editor de texto vi utilizando el siguiente mandato:
vi $ODBCINI
- En InstallDir, añada la ubicación de la instalación de WebSphere Message Broker para completar la vía de acceso completa al directorio ODBC. Si no especifica este valor correctamente, la definición ODBC no funciona.
- Acepte los valores predeterminados mostrados en el archivo odbc.ini
para todas las demás entradas de la stanza.
Por
ejemplo, en
AIX:
;##########################################
;###### Stanza de información obligatoria ######
;##########################################
[ODBC]
InstallDir=/usr/opt/IBM/mqsi/8.0.0.4/ODBC/V6.0
UseCursorLib=0
IANAAppCodePage=4
UNICODE=UTF-8
- Edite la primera stanza del archivo odbc.ini,
la stanza [ODBC Data Sources], para listar el
DSN de cada base de datos.
Por
ejemplo, en
AIX:
;##########################################
;###### Stanza de lista de orígenes de datos #######
;##########################################
[ODBC Data Sources]
DB2DB=IBM DB2 ODBC Driver
ORACLEDB=DataDirect 6.0 ODBC Oracle Wire Protocol
ORACLERACDB=DataDirect 6.0 ODBC Oracle RAC Wire Protocol
SYBASEDB=DataDirect 6.0 ODBC Sybase Wire Protocol
SYBASEDBUTF8=DataDirect 6.0 ODBC Sybase UTF8 Wire Protocol
SQLSERVERDB=DataDirect 6.0 ODBC SQL Server Wire Protocol
INFORMIXDB=IBM Informix ODBC Driver
SOLIDDB_DB=IBM Solid DB ODBC Driver
Liste todos los DSN del archivo odbc.ini, independientemente del gestor de bases de datos. Puede definir varios DSN para
resolver en la misma base de datos; sin embargo, si está utilizando la coordinación
global de transacciones con una base de datos Oracle, no utilice esta opción porque puede producir problemas de
integridad de datos.
- Para cada base de datos listada en la stanza
[ODBC Data Sources], dentro del archivo
odbc.ini, cree una stanza de origen de datos en el
archivo odbc.ini.
Las entradas de la sección dependen del gestor de bases de datos. Hay
también ligeras diferencias entre los sistemas operativos, por ejemplo las vías de acceso
de archivo a los controladores.
- Para una instancia de base de datos DB2:
- Para Linux en x86:
- En Driver, añada la vía de acceso completa de la instalación de DB2.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En Database, escriba el alias de
DB2. El nombre de origen de datos debe ser igual que el nombre de alias de
base de datos. Si está utilizando una base de datos DB2
remota, configure la conexión entre cliente y servidor para que se resuelva este
alias en la base de datos correcta.
Si el requisito es tener varias stanzas que hagan referencia a la misma base de datos de
DB2, los aliases deben crearse en
DB2 utilizando el mandato CATALOG de DB2. Estos alias pueden tener su propia stanza en el archivo ODBCINI.
El archivo ODBCINI no se puede utilizar para configurar alias para DB2.
Para obtener más información, consulte
la documentación de DB2.
Por
ejemplo:
# Stanza DB2
[MYDB2DB]
Driver=/opt/IBM/db2/V9.7/lib32/libdb2.so
Description=IBM DB2 ODBC Database
Database=MYDB2DB
- Para todas las demás plataformas:
- En Driver, añada la vía de acceso completa de la instalación de DB2.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En Database, escriba el alias de
DB2. El nombre de origen de datos debe ser igual que el nombre de alias de
base de datos. Si está utilizando una base de datos DB2
remota, configure la conexión entre cliente y servidor para que se resuelva este
alias en la base de datos correcta. Para obtener más información, consulte
la documentación de DB2.
Si el requisito es tener varias stanzas que hagan referencia a la misma base de datos de
DB2, los aliases deben crearse en
DB2 utilizando el mandato CATALOG de DB2. Estos alias pueden tener su propia stanza en el archivo ODBCINI.
El archivo ODBCINI no se puede utilizar para configurar alias para DB2.
Por
ejemplo, en AIX:
;# Stanza DB2
[MYDB2DB]
DRIVER=/opt/IBM/db2/V9.7/lib64/db2o.o
Description=IBM DB2 ODBC Database
Database=MYDB2DB
- Para una base de datos Oracle:
- Para todas las plataformas:
- En Driver, añada la ubicación de instalación de WebSphere Message Broker para completar la vía de acceso completa al controlador que se muestra en el archivo odbc.ini de ejemplo.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En HostName, escriba el nombre o la dirección
IP de la maquina que contiene el sistema Oracle.
- En PortNumber,
escriba el número del puerto en el que el servidor Oracle escucha en la máquina
que ha especificado en HostName.
- En ServiceName, escriba el nombre de servicio
Oracle al que se desea conectar en el sistema que ha especificado en
HostName.
- Acepte los valores predeterminados mostrados en el archivo odbc.ini
para todas las demás entradas de la stanza.
Por
ejemplo, en
AIX:
;# Stanza Oracle
[MYORACLEDB]
Driver=/usr/opt/IBM/mqsi/8.0.0.4/ODBC/V6.0/lib/UKora24.so
Description=DataDirect ODBC 7.0 Oracle Wire Protocol
HostName=my-machine.hursley.ibm.com
PortNumber=1521
ServiceName=mi servicio de oracle
CatalogOptions=0
EnableStaticCursorsForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
ProcedureRetResults=1
ColumnSizeAsCharacter=1
LoginTimeout=0
- Para una base de datos Oracle que utiliza Real
Application Clusters:
- Para todas las plataformas:
- En Driver, añada la ubicación de instalación de WebSphere Message Broker para completar la vía de acceso completa al controlador que se muestra en el archivo odbc.ini de ejemplo.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En HostName, escriba el nombre o la dirección IP
de la máquina que contiene la instancia de Oracle primaria (preferida).
- En PortNumber,
escriba el número del puerto en el que el servidor Oracle escucha en la máquina
que ha especificado en HostName.
- En ServiceName, escriba el nombre de servicio Oracle Real
Application Cluster al que se desea conectar en el sistema que ha especificado en
HostName.
- En AlternateServers, proporcione una lista
de ubicaciones alternativas para este servicio para situaciones en las que la ubicación
primaria, que está definida en HostName, no está disponible. Cada especificación de ubicación consta de tres partes, que están separados por dos puntos. Entre
estos valores como una serie continua; el texto de este ejemplo se ha dividido
para facilitar su lectura.
HostName=<nombre alternativo de host>
:PortNumber=<Puerto de escucha de Oracle en el servidor alternativo>
:ServiceName=<Nombre de servicio en el servidor alternativo>
Si desea especificar más de un valor
AlternateServer, separe cada especificación de ubicación adicional con una coma. Siempre que
se necesite una nueva conexión de base de datos, por ejemplo después de una migración tras error
de instancia de Oracle, se intentará primero la ubicación primaria. Sin embargo, si la ubicación primaria
no está disponible, el controlador intentará a su vez la lista de ubicaciones alternativas.
- Acepte los valores predeterminados mostrados en el archivo odbc.ini
para todas las demás entradas de la stanza.
Por
ejemplo, en
AIX:
;# Stanza de Oracle Real Application Clusters
[MYORACLERACDB]
Driver=/usr/opt/IBM/mqsi/8.0.0.4/ODBC/V6.0/lib/UKora24.so
Description=DataDirect 7.0 ODBC Oracle RAC Wire Protocol
HostName=my-primary-machine.hursley.ibm.com
PortNumber=1521
ServiceName=mi servicio rac de oracle
;#Esto muestra una definición de servidor alternativo. Añada algunos adicionales utilizando una ',' para separar cada definición.
AlternateServers=(HostName=my-first-backup-machine.hursley.ibm.com:PortNumber=1521:ServiceName=my-oracle-rac-first-backup-service,HostName=my-second-backup-machine.hursley.ibm.com:PortNumber=1521:ServiceName=my-oracle-rac-second-backup-service)
CatalogOptions=0
EnableStaticCursorsForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
ProcedureRetResults=1
ColumnSizeAsCharacter=1
LoginTimeout=0
Para una base de datos Oracle que utiliza Secure Socket Layer (SSL): 
Para todas las plataformas:
- En Driver, añada la ubicación de instalación de WebSphere Message Broker para completar la vía de acceso completa al controlador que se muestra en el archivo odbc.ini de ejemplo.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En HostName, escriba el nombre o la dirección IP
de la máquina que contiene la instancia de Oracle primaria (preferida).
- En PortNumber,
escriba el número del puerto en el que el servidor Oracle escucha conexiones SSL en la máquina
que ha especificado en HostName.
- En ServiceName, escriba el nombre del servicio SSL de
Oracle al que se desea conectar en el sistema que ha especificado en
HostName.
- En KeyPassword, escriba la contraseña de clave SSL.
- En KeyStore, escriba el nombre completo del almacén de claves SSL.
- En KeyStorePassword, escriba la contraseña del almacén de claves SSL.
- En TrustStore, escriba el nombre completo del almacén de confianza SSL.
- En TrustStorePassword, escriba la contraseña del almacén de confianza SSL.
- Acepte los valores predeterminados mostrados en el archivo odbc.ini
para todas las demás entradas de la stanza.
Por
ejemplo, en
AIX:
;# Stanza Oracle utilizando SSL
[MYORACLESSLDB]
Driver=/usr/opt/IBM/mqsi/8.0.0.4/ODBC/V7.0/lib/UKora26.so
Description=DataDirect 7.0 ODBC Oracle Wire Protocol
HostName=my-machine.hursley.ibm.com
PortNumber=2484
ServiceName=mi servicio ssl de oracle
CatalogOptions=0
EnableStaticCursorsForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
ProcedureRetResults=1
ColumnSizeAsCharacter=1
LoginTimeout=0
AuthenticationMethod=1
KeyPassword=mi contraseña
KeyStore=/Development/ssl/my-store.p12
KeyStorePassword=mi contraseña
TrustStore=/Development/ssl/my-store.p12
TrustStorePassword=mi contraseña
ValidateServerCertificate=1

- Para una base de datos Sybase:
- Para todas las plataformas excepto Linux en System
z:
- En Driver, añada la ubicación de instalación de WebSphere Message Broker para completar la vía de acceso completa al controlador que se muestra en el archivo odbc.ini de ejemplo.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En Database, escriba el nombre de la base de
datos a la que desea conectarse de forma predeterminada. Si no especifica un valor, el valor predeterminado es la base de datos que está definida por el administrador del sistema para cada usuario.
- En NetworkAddress, escriba la dirección de red
del servidor Sybase ASE (esta dirección es necesaria para bases de datos locales y
remotas). Especifique una dirección IP o nombre de servidor, como se indica a continuación:
<Nombre de servidor Sybase o dirección IP>,<Número
de puerto Sybase>
Por ejemplo: servidorSybase,5000. También puede
especificar la dirección IP directamente, por ejemplo
199.226.224.34,5000.
Puede encontrar el número de puerto en el archivo de interfaces Sybase que se denomina
interfaces.
- Acepte los valores predeterminados mostrados en el archivo odbc.ini
para todas las demás entradas de la stanza.
Por
ejemplo, en
AIX:
;# Stanza Sybase
[MYSYBASEDB]
Driver=/usr/opt/IBM/mqsi/8.0.0.4/ODBC/V6.0/lib/UKase24.so
Description=DataDirect 7.0 ODBC Sybase Wire Protocol
Database=SYBASEDB1
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
SelectMethod=0
NetworkAddress=my-machine.hursley.ibm.com:4100
SelectUserName=1
ColumnSizeAsCharacter=1
EnableSPColumnTypes=2
LoginTimeout=0
TimestampTruncationBehavior=1
XAConnOptBehavior=3
Si
desea utilizar un origen de datos Sybase UNICODE UTF8, añada la línea siguiente al final
de la stanza Sybase:Charset=UTF8
- Para el acceso remoto a una base de datos SQL Server
- Para todas las plataformas excepto Linux en POWER:
- En Driver, añada la ubicación de instalación de WebSphere Message Broker para completar la vía de acceso completa al controlador que se muestra en el odbc.ini de ejemplo.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En Address, realice una de las siguientes
acciones:
- Especifique una dirección IP o un nombre de servidor y un número de
puerto para localizar la base de datos SQLServer a la que desea
conectarse, como se indica a continuación:
<Nombre de máquina SQLServer o dirección IP>,<Número
de puerto SQLServer>
o
- Especifique una dirección IP o un nombre de servidor y un nombre de
instancia para localizar la base de datos SQLServer a la que desea
conectarse, como se indica a continuación:
<Nombre de máquina SQLServer o dirección IP>\<Nombre de instancia de SQLServer>
Si
su nombre de instancia está en blanco, especifique <Nombre de
máquina SQLServer o dirección IP>
- En Database, escriba el nombre de la base de
datos a la que desea conectarse de forma predeterminada. Si no especifica un valor, el valor predeterminado es la base de datos que está definida por el administrador del sistema para cada usuario.
- Acepte los valores predeterminados mostrados en el archivo odbc.ini
para todas las demás entradas de la stanza.
Por
ejemplo, en
AIX:
;# Stanza UNIX a SQLServer
[MYSQLSERVERDB]
Driver=/usr/opt/IBM/mqsi/8.0.0.4/ODBC/V6.0/lib/UKmsss24.so
Description=DataDirect 7.0 ODBC SQL Server Wire Protocol
Address=my-machine.hursley.ibm.com:1433
AnsiNPW=Yes
Database=MYSQLSERVERDB
QuotedId=No
ColumnSizeAsCharacter=1
LoginTimeout=0
- Para una base de datos Informix
-
- Para Linux en x86
- En Driver, añada la vía de acceso completa de la biblioteca de cliente Informix.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En ServerName, escriba el nombre del servidor Informix IDS.
- En Database, escriba el nombre de la base de
datos a la que desea conectarse de forma predeterminada. Si no especifica un valor, el valor predeterminado es la base de datos que está definida por el administrador del sistema para cada usuario.
Por
ejemplo:
;# Stanza Informix
[MYINFORMIXDB]
Driver=/Informix/client/lib/cli/iclit09b.so
Description=IBM Informix ODBC Database
ServerName=mi máquina
Database=MYDB
- Para todas las demás plataformas:
- En Driver, añada la vía de acceso completa de la biblioteca de cliente Informix.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En ServerName, escriba el nombre del servidor Informix IDS.
- En Database, escriba el nombre de la base de
datos a la que desea conectarse de forma predeterminada. Si no especifica un valor, el valor predeterminado es la base de datos que está definida por el administrador del sistema para cada usuario.
Por
ejemplo, en
AIX:
;# Stanza Informix
[MYINFORMIXDB]
Driver=libinfWrapper.so
Description=IBM Informix ODBC Database
ServerName=mi máquina
Database=MYDB
- Para una base de datos solidDB:
- Para todas las plataformas excepto Linux en POWER y Linux en System
z:
Lado del cliente
Archivo odbc.ini
- En Driver, añada la vía de acceso completa de la biblioteca de
cliente solidDB.
- En Description, escriba una descripción
significativa de la base de datos. Este campo es meramente informativo y no afecta a la conexión.
- En Database, escriba el nombre de la base de
datos a la que desea conectarse de forma predeterminada. Si no especifica un valor, el valor predeterminado es la base de datos que está definida por el administrador del sistema para cada usuario.
Por
ejemplo, en
AIX:
;# Stanza SolidDB
[SOLID_DB]
Driver=/opt/solidDB/bin/soca5x6465.so
Description=IBM Solid DB ODBC database
Database=SOLIDDB_DB
Nota: toda la información adicional se omite.
Archivo solid.ini
- Este archivo de configuración se encuentra en el directorio al que se hace referencia mediante la variable de entorno SOLIDDIR.
- La correlación de solid.ini se realiza desde
el nombre del origen de datos (tal como se ha definido en
ODBCINI) a la serie de conexión de
solidDB.
- La serie de conexión tiene el
formato <nombre lógico del controlador > = <serie de conexión física de solidDB>.
- La serie de conexión física especifica lo siguiente:
- Protocolo
- Nombre o dirección IP de la máquina
- Número de puerto que debe utilizarse
Por
ejemplo, en
AIX:
[Data Sources]
SOLIDDB_DB=tcp my_aix_system 1964
Lado del servidor
Archivo solid.ini
- Este archivo de configuración se encuentra en el directorio de instalación de solidDB.
- Establezca el origen de datos (Data Source) como el del archivo solid.ini del lado de cliente.
- Establezca Listen en la ubicación del escucha para el servidor.
- Establezca CharPadding=yes y NumericPadding=yes para activar el relleno.
Por
ejemplo, en
AIX:
[Data Sources]
SOLIDDB_DB=tcp my_aix_system 1964
[COM]
Listen=tcpip 1964
[SQL]
CharPadding=yes
NumericPadding=yes
- Asegúrese de que ha editado todas las partes necesarias de todos los archivos
.ini pertinentes:
- La stanza [ODBC Data Source] en la parte superior del archivo odbc.ini.
- Una stanza para cada origen de datos en el archivo
odbc.ini.
- La stanza [ODBC] al final del archivo odbcinst.ini.
- Además, para solidDB, los archivos
solid.ini del lado del cliente y servidor.
Si no configura correctamente todas las partes, los DSN ODBC no funcionarán y el
intermediario no podrá conectarse a la base de datos.

Ahora ha configurado las conexiones de base de
datos en
Linux y
UNIX.
Puede
comprobar que el entorno ODBC está configurado correctamente ejecutando el mandato
mqsicvp.
Para obtener más información, consulte Mandato mqsicvp.