Início da mudança

Configurando Bancos de Dados para Fluxos de Mensagens Coordenados com o Oracle

Se o fluxo de mensagens interagir com um banco de dados Oracle e você desejar coordenar as atualizações feitas no banco de dados com outras ações dentro do fluxo de mensagens, configure o intermediário para gerenciar essas atualizações.

Antes de começar:

Para concluir esta tarefa, você deve ter concluído a seguinte tarefa:

As instruções a seguir descrevem como configurar as origens de dados do Oracle para a coordenação XA. Para obter informações adicionais sobre a configuração do Oracle para coordenação XA com o WebSphere MQ, consulte a seção chamada "Configuração do Oracle" em Administração do Sistema WebSphere MQ.

Para executar a coordenação de XA com o Oracle, você pode utilizar o WebSphere MQ Versão 5.3 ou o WebSphere MQ Versão 6.0 como o coordenador de transação:

Configurando o Oracle com o WebSphere MQ Versão 5.0 como o Coordenador de Transação

Para configurar suas origens de dados do Oracle para a coordenação do XA utilizando o WebSphere MQ Versão 5.0 como o coordenador de transação:

  1. Assegure-se de que o ID do usuário utilizado para acessar o banco de dados especificado no XAOpenString tenha os privilégios do Oracle necessários para acessar a visualização DBA_PENDING_TRANSACTIONS. É possível conceder o acesso necessário utilizando o seguinte comando do Oracle SQLPLUS:
    grant select on DBA_PENDING_TRANSACTIONS to <userid>;
  2. Crie os seguintes links simbólicos:
    No AIX:
    ln -s install_dir/merant/lib/libUKicu20.a /var/mqm/exits/libUKicu20.a
    ln -s $ORACLE_HOME/lib/libclntsh.a /var/mqm/exits/libclntsh.a
    No HP-UX:
    ln -s install_dir/merant/lib/libUKicu20.sl /var/mqm/exits/libUKicu20.sl
    ln -s $ORACLE_HOME/lib/libclntsh.sl /var/mqm/exits/libclntsh.sl
    Início da mudançaNo Solaris (plataforma SPARC) e no Linux (plataforma x86):
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s $ORACLE_HOME/lib/libclntsh.so /var/mqm/exits/libclntsh.so
    Fim da mudança
    Início da mudançaNo Solaris (plataforma x86-64):
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s install_dir/merant/lib/UKoradtc20.so /var/mqm/exits/UKoradtc20.so
    ln -s install_dir/merant/lib/UKora20.so /var/mqm/exits/UKora20.so
    Fim da mudança
  3. Configure o gerenciador de filas do intermediário com informações do Gerenciador de Recursos XA e especifique o arquivo switch que é fornecido pelo WebSphere Message Broker.
    • No UNIX, inclua uma sub-rotina XAResourceManager no arquivo qm.ini. O arquivo qm.ini está localizado em /var/mqm/qmgrs/broker_name/qm.ini, em que broker_name é o nome do intermediário que está associado ao gerenciador de filas. O nome do arquivo switch depende do sistema operacional:
      • Início da mudançaNo AIX, no Solaris (plataforma SPARC) e no Linux (plataforma x86), especifique UKor8dtc20.soFim da mudança
      • No HP-UX, especifique UKor8dtc20.sl
      • Início da mudançaNo Solaris (plataforma x86-64), especifique UKoradtc20.soFim da mudança
      Os exemplos da sub-rotina XAResourceManager para cada sistema operacional são mostrados abaixo.
    • No Windows, em WebSphere MQ Services, configure os valores na página Recursos da caixa de diálogo Propriedade do gerenciador de filas. O nome do arquivo switch é UKor8dtc20.dll. Um exemplo dos valores a serem inseridos na página Recursos é mostrado abaixo.
O Oracle agora está configurado para coordenação XA com as transações de coordenação do WebSphere MQ Versão 5.3.

Exemplos

Nos exemplos a seguir:
  • install_dir é o local onde o tempo de execução do WebSphere Message Broker está instalado
  • MyServerName é o nome do servidor Oracle
  • MyHostName é o nome do host TCP/IP no qual o banco de dados Oracle reside.
  • MyPortNumber é a porta TCP/IP na qual o banco de dados Oracle está atendendo.
  • MySID é o SID (System Identifier) do Oracle do banco de dados.
  • MyUserId é o nome do usuário com o qual você deseja se conectar com a origem de dados
  • MyPassword é a senha associada ao nome do usuário
  • MyDataSourceName é o nome da origem de dados ODBC para o banco de dados
AIX:
XAResourceManager:
Name=OracleXA
SwitchFile=install_dir/merant/lib/UKor8dtc20.so
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
HP-UX:
XAResourceManager:
Name=OracleXA
SwitchFile=install_dir/merant/lib/UKor8dtc20.sl
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
Linux (plataforma x86):
XAResourceManager:
Name=OracleXA
SwitchFile=install_dir/merant/lib/UKor8dtc20.so
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
Início da mudançaSolaris (plataforma SPARC):Fim da mudança
Início da mudança
XAResourceManager:
Name=OracleXA
SwitchFile=install_dir/merant/lib/UKor8dtc20.so
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
Fim da mudança
Início da mudançaSolaris (plataforma x86-64):Fim da mudança
Início da mudança
XAResourceManager:
Name=OracleXA
SwitchFile=install_dir/merant/lib/UKoradtc20.so
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
Fim da mudança
Windows (utilizando o WebSphere MQ Services):
Campo Value
SwitchFile C:\Program Files\IBM\MQSI\6.0\bin\UKor8dtc20.dll
XAOpenString ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID +ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
ThreadOfControl THREAD

Configurando o Oracle com o WebSphere MQ Versão 6.0 como o Coordenador de Transação

Para configurar suas origens de dados do Oracle para a coordenação do XA utilizando o WebSphere MQ Versão 6.0 como o coordenador de transação:

  1. Assegure-se de que o ID do usuário utilizado para acessar o banco de dados especificado no XAOpenString tenha os privilégios do Oracle necessários para acessar a visualização DBA_PENDING_TRANSACTIONS. É possível conceder o acesso necessário utilizando o seguinte comando do Oracle SQLPLUS:
    grant select on DBA_PENDING_TRANSACTIONS to <userid>;
  2. Crie os seguintes links simbólicos:
    No AIX:
    ln -s install_dir/merant/lib/libUKicu20.a /var/mqm/exits/libUKicu20.a
    ln -s install_dir/merant/lib/UKor8dtc20.so /var/mqm/exits/UKor8dtc20.so
    ln -s $ORACLE_HOME/lib/libclntsh.a /var/mqm/exits/libclntsh.a
    ln -s install_dir/DD64/lib/libUKicu20.a /var/mqm/exits64/libUKicu20.a
    ln -s install_dir/DD64/lib/UKoradtc20.so /var/mqm/exits64/UKor8dtc20.so
    No HP-UX:
    ln -s install_dir/merant/lib/libUKicu20.sl /var/mqm/exits/libUKicu20.sl
    ln -s install_dir/merant/lib/UKor8dtc20.sl /var/mqm/exits/UKor8dtc20.sl
    ln -s $ORACLE_HOME/lib/libclntsh.sl /var/mqm/exits/libclntsh.sl
    ln -s install_dir/DD64/lib/libUKicu20.sl /var/mqm/exits64/libUKicu20.sl
    ln -s install_dir/DD64/lib/UKoradtc20.sl /var/mqm/exits64/UKor8dtc20.sl
    No Linux (plataforma x86):
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s install_dir/merant/lib/UKor8dtc20.so /var/mqm/exits/UKor8dtc20.so
    ln -s $ORACLE_HOME/lib/libclntsh.so /var/mqm/exits/libclntsh.so
    Início da mudançaNo Solaris (plataforma SPARC):
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s install_dir/merant/lib/UKor8dtc20.so /var/mqm/exits/UKor8dtc20.so
    ln -s $ORACLE_HOME/lib/libclntsh.so /var/mqm/exits/libclntsh.so
    ln -s install_dir/DD64/lib/libUKicu20.so /var/mqm/exits64/libUKicu20.so
    ln -s install_dir/DD64/lib/UKoradtc20.so /var/mqm/exits64/UKor8dtc20.so
    Fim da mudança
    Início da mudançaNo Solaris (plataforma x86-64):
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s install_dir/merant/lib/UKoradtc20.so /var/mqm/exits/UKoradtc20.so
    ln -s install_dir/merant/lib/UKora20.so /var/mqm/exits/UKora20.so
    ln -s install_dir/DD64/lib/libUKicu20.so /var/mqm/exits64/libUKicu20.so
    ln -s install_dir/DD64/lib/UKoradtc20.so /var/mqm/exits64/UKoradtc20.so
    Fim da mudança
  3. Configure o gerenciador de filas do intermediário com informações do Gerenciador de Recursos XA e especifique o arquivo switch que é fornecido pelo WebSphere Message Broker.
    • No UNIX, inclua uma sub-rotina XAResourceManager no arquivo qm.ini. O arquivo qm.ini está localizado em /var/mqm/qmgrs/broker_name/qm.ini, em que broker_name é o nome do intermediário que está associado ao gerenciador de filas. O nome do arquivo switch depende do sistema operacional:
      • Início da mudançaNo AIX, no Solaris (plataforma SPARC) e no Linux (plataforma x86), especifique UKor8dtc20.soFim da mudança
      • No HP-UX, especifique UKor8dtc20.sl
      • Início da mudançaNo Solaris (plataforma x86-64), especifique UKoradtc20.soFim da mudança
      Os exemplos da sub-rotina XAResourceManager para cada sistema operacional são mostrados abaixo.
    • No Windows, em WebSphere MQ Services, configure os valores na página Recursos da caixa de diálogo Propriedade do gerenciador de filas. O nome do arquivo switch é UKor8dtc20.dll. Um exemplo dos valores a serem inseridos na página Recursos é mostrado abaixo.
O Oracle agora está configurado para coordenação de XA com as transações de coordenação do WebSphere MQ Versão 6.0.

Exemplos

Nos exemplos a seguir:
  • install_dir é o local onde o tempo de execução do WebSphere Message Broker está instalado
  • MyServerName é o nome do servidor Oracle
  • MyHostName é o nome do host TCP/IP no qual o banco de dados Oracle reside.
  • MyPortNumber é a porta TCP/IP na qual o banco de dados Oracle está atendendo.
  • MySID é o SID (System Identifier) do Oracle do banco de dados.
  • MyUserId é o nome do usuário com o qual você deseja se conectar com a origem de dados
  • MyPassword é a senha associada ao nome do usuário
  • MyDataSourceName é o nome da origem de dados ODBC para o banco de dados
AIX:
XAResourceManager:
Name=OracleXA
SwitchFile=UKor8dtc20.so
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
HP-UX:
XAResourceManager:
Name=OracleXA
SwitchFile=UKor8dtc20.sl
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
Linux (plataforma x86):
XAResourceManager:
Name=OracleXA
SwitchFile=UKor8dtc20.so
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
Início da mudançaSolaris (plataforma SPARC):Fim da mudança
Início da mudança
XAResourceManager:
Name=OracleXA
SwitchFile=UKor8dtc20.so
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
Fim da mudança
Início da mudançaSolaris (plataforma x86-64):Fim da mudança
Início da mudança
XAResourceManager:
Name=OracleXA
SwitchFile=UKoradtc20.so
XAOpenString=ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID
+ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
XACloseString=
ThreadOfControl=THREAD
Fim da mudança
Windows (utilizando o WebSphere MQ Explorer):
Campo Value
SwitchFile UKor8dtc20.dll
XAOpenString ORACLE_XA+SQLNET=MyServerName+HostName=MyHostName+PortNumber=MyPortNumber+Sid=MySID +ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE+DataSource=MyDataSourceName+DB=MyDataSourceName+K=2+
ThreadOfControl THREAD
Conceitos relacionados
Visão Geral de Fluxos de Mensagens
Referências relacionadas
Bancos de Dados Suportados
Nós Internos
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ac00910_


Fim da mudança