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:

Utilizando o Oracle com um Intermediário de 32 Bits

Se desejar utilizar o Oracle em transações coordenadas, siga as instruções gerais na seção chamada "Configuração do Oracle" no manual WebSphere MQ Administração de Sistemas e utilize-as com as instruções específicas fornecidas aqui. Em específico, é necessário fornecer um link simbólico para a biblioteca de cliente Oracle de 32 bits libclntsh de /var/mqm/exits.

  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 <id_do_usuário>;
  2. Utilize o switchfile fornecido pelo WebSphere Message Broker. Quando você incluir a informação de configuração para o Oracle do XAResourceManager, especifique:
    • UKor8dtc20.so como o switchfile nas plataformas AIX, Solaris e Linux x86.
    • UKor8dtc20.sl como o switchfile no HP-UX
    • UKor8dtc20.dll como o switchfile no Windows
  3. Crie os seguintes links simbólicos:
    No AIX:
    ln –s <Seu diretório de instalação>/merant/lib/libUKicu20.a /var/mqm/exits/libUKicu20.a
    ln –s $ORACLE_HOME/lib/libclntsh.a /var/mqm/exits/libclntsh.a
    Na plataforma Solaris e Linux x86:
    ln –s <Seu diretório de instalação>/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln –s $ORACLE_HOME/lib/libclntsh.so /var/mqm/exits/libclntsh.so
    No HP-UX:
    ln –s <Seu diretório de instalação>/merant/lib/libUKicu20.sl /var/mqm/exits/libUKicu20.sl
    ln –s $ORACLE_HOME/lib/libclntsh.sl /var/mqm/exits/libclntsh.sl
  • Para coordenação pelo WebSphere MQ V5:

    Os exemplos a seguir mostram o que você deve incluir na sub-rotina XAResourceManager no arquivo qm.ini nos sistemas Linux e UNIX e as informações equivalentes para Windows:

    • No AIX:
      XAResourceManager:
      Name=OracleXA
      SwitchFile=<Seu diretório de instalação>/merant/lib/UKor8dtc20.so
      XAOpenString=ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      XACloseString=
      ThreadOfControl=THREAD
    • No HP-UX:
      XAResourceManager:
      Name=OracleXA
      SwitchFile=<Seu diretório de instalação>/merant/lib/UKor8dtc20.sl
      XAOpenString=ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      XACloseString=
      ThreadOfControl=THREAD
    • No Linux (plataforma x86):
      XAResourceManager:
      Name=OracleXA
      SwitchFile=<dir_de_instalação>/merant/lib/UKor8dtc20.so
      XAOpenString=ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      XACloseString=
      ThreadOfControl=THREAD
    • No Solaris:
      XAResourceManager:
      Name=OracleXA
      SwitchFile=<dir_de_instalação>/merant/lib/UKor8dtc20.so
      XAOpenString=ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      XACloseString=
      ThreadOfControl=THREAD
    • No Windows, defina os seguintes valores na página Recursos do diálogo de propriedades para o gerenciador de filas do WebSphere MQ (acessível a partir dos Serviços do WebSphere MQ). Este exemplo assume que você tenha instalado o WebSphere Message Broker no diretório C:\WMQI:
      SwitchFile: C:\WMQI\BIN\UKor8dtc20.dll
      XAOpenString: ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      ThreadOfControl: THREAD
  • Para coordenação pelo WebSphere MQ V6:

    Os exemplos a seguir mostram o que você deve incluir na sub-rotina XAResourceManager no arquivo qm.ini nos sistemas Linux e UNIX e as informações equivalentes para Windows:

    • No AIX:
      XAResourceManager:
      Name=OracleXA
      SwitchFile=UKor8dtc20.so
      XAOpenString=ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      XACloseString=
      ThreadOfControl=THREAD
    • No HP-UX:
      XAResourceManager:
      Name=OracleXA
      SwitchFile=UKor8dtc20.sl
      XAOpenString=ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      XACloseString=
      ThreadOfControl=THREAD
    • No Linux (plataforma x86):
      XAResourceManager:
      Name=OracleXA
      SwitchFile=UKor8dtc20.so
      XAOpenString=ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      XACloseString=
      ThreadOfControl=THREAD
    • No Solaris:
      XAResourceManager:
      Name=OracleXA
      SwitchFile=UKor8dtc20.so
      XAOpenString=ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      XACloseString=
      ThreadOfControl=THREAD
    • No Windows, defina os seguintes valores na página Recursos do diálogo de propriedades para o gerenciador de filas do WebSphere MQ (acessível a partir dos Serviços do WebSphere MQ). Este exemplo assume que você tenha instalado o WebSphere Message Broker no diretório C:\WMQI:
      SwitchFile: C:\WMQI\BIN\UKor8dtc20.dll
      XAOpenString: ORACLE_XA+SQLNET=myserver+ACC=P/scott/tiger+sestm=0+
          threads=TRUE+DB=ORACLEDB
      ThreadOfControl: THREAD

Utilizando o Oracle com um Intermediário de 64 Bits

Se desejar utilizar o Oracle em transações coordenadas, siga as instruções gerais na seção chamada "Configuração do Oracle" no manual WebSphere MQ Administração de Sistemas e utilize-as com as instruções específicas fornecidas aqui.

  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 <id_do_usuário>;
  2. Utilize o switchfile fornecido pelo WebSphere Message Broker. Quando você incluir a informação de configuração para o Oracle do XAResourceManager, especifique:
    • UKoradtc20.so como o switchfile no AIX e no Solaris.
    • UKoradtc20.sl como o switchfile no HP-UX.
  3. Especifique o nome do host da máquina do servidor Oracle, o número da porta na qual ele está atendendo, o SID (Service ID) do Oracle, o nome do usuário e a senha que devem ser utilizados para acessar o banco de dados, além do nome do banco de dados a ser coordenado.
  4. Crie o seguinte link simbólico.
    No AIX:
    ln –s <Seu diretório de instalação>/DD64/lib/libUKicu20.a /var/mqm/exits64/libUKicu20.a
    No Solaris:
    ln –s <Seu diretório de instalação>/DD64/lib/libUKicu20.so /var/mqm/exits64/libUKicu20.so
    No HP-UX:
    ln –s <Seu diretório de instalação>/DD64/lib/libUKicu20.sl /var/mqm/exits64/libUKicu20.sl

Os exemplos a seguir mostram o que você deve incluir na sub-rotina XAResourceManager no arquivo qm.ini nos sistemas UNIX e a informação equivalente para o Windows:

  • No AIX:
    XAResourceManager:
    Name=OracleXA
    SwitchFile=UKoradtc20.so
    XAOpenString=ORACLE_XA+HostName=myhostname+PortNumber=myportnumber+Sid=mySID+ACC=P/myuid/mypasswd+SesTM=100+DataSource=mydatasourcename+K=2+
    XACloseString=
    ThreadOfControl=THREAD
  • No HP-UX:
    XAResourceManager:
    Name=OracleXA
    SwitchFile=UKoradtc20.sl
    XAOpenString=ORACLE_XA+HostName=myhostname+PortNumber=myportnumber+Sid=mySID+ACC=P/myuid/mypasswd+SesTM=100+DataSource=mydatasourcename+K=2+
    XACloseString=
    ThreadOfControl=THREAD
  • No Solaris:
    XAResourceManager:
    Name=OracleXA
    SwitchFile=UKoradtc20.so
    XAOpenString=ORACLE_XA+HostName=myhostname+PortNumber=myportnumber+Sid=mySID+ACC=P/myuid/mypasswd+SesTM=100+DataSource=mydatasourcename+K=2+
    XACloseString=
    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, 2005 Última Atualização: 04/11/2005
ac00910_