Configurando a Coordenação Global com o Oracle Utilizando um Gerenciador de Filas de 32 Bits

Configure seu ambiente do intermediário para coordenar globalmente transações do fluxo de mensagens com atualizações em bancos de dados Oracle controlados por um gerenciador de filas de 32-bit.

Antes de começar:
Conclua esta tarefa para configurar o ambiente do intermediário quando o intermediário utiliza um gerenciador de filas de 32 bits.

Todos os gerenciadores de filas do WebSphere MQ Versão 5.3 e todos os gerenciadores de filas do WebSphere MQ Versão 6 em plataformas de 32 bits são executados no modo de 32 bits. Os gerenciadores de filas de 32 bits podem coordenar transações apenas no modo de 32 bits e podem coordenar fluxos de mensagens que são implementados apenas para grupos de execução de 32 bits.

Para configurar o ambiente do intermediário para coordenação global utilizando um gerenciador de filas de 32 bits como o gerenciador de transações:

  1. Linux platformUNIX platform Apenas no Linux em x86 e UNIX, crie os seguintes links simbólicos para especificar o local dos drivers do banco de dados ODBC que foram fornecidos com o WebSphere Message Broker.

    Você deve digitar estes comandos em uma única linha; foram incluídas quebras de linhas para aprimorar a capacidade de leitura.

    AIX platform Início da mudançaNo AIX:Fim da mudança
    ln -s install_dir/merant/lib/libUKicu20.a /var/mqm/exits/libUKicu20.a
    ln -s Oracle_install_dir/lib32/libclntsh.a /var/mqm/exits/libclntsh.a
    ln -s Oracle_install_dir/lib32/libclntsh.a /usr/lib/libclntsh.a
    HP-UX platform No HP-UX em PA-RISC:
    ln -s install_dir/merant/lib/libUKicu20.sl /var/mqm/exits/libUKicu20.sl
    ln -s Oracle_install_dir/lib32/libclntsh.sl /var/mqm/exits/libclntsh.sl
    ln -s Oracle_install_dir/lib32/libclntsh.sl /usr/lib/libclntsh.sl
    Linux platformSolaris platform No Linux em x86 e Solaris em SPARC:
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s Oracle_install_dir/lib32/libclntsh.so /var/mqm/exits/libclntsh.so
    ln -s Oracle_install_dir/lib32/libclntsh.so /usr/lib/libclntsh.so
    Em que:
    • install_dir é o local onde o WebSphere Message Broker está instalado.
    • Oracle_install_dir é o local no qual o Oracle está instalado, que é o mesmo valor que $ORACLE_HOME.
  2. Configure o gerenciador de filas do intermediário com informações do gerenciador de recursos XA para cada banco de dados envolvido na transação que será coordenada globalmente pelo gerenciador de filas. Se os fluxos de mensagens fizerem referência a dicionários de mensagem ou contiverem nós Publicação, será necessário utilizar o mesmo método para definir informações do gerenciador de recursos XA para o banco de dados do intermediário e para bancos de dados do usuário.

    Linux platformUNIX platform Início da mudançaNo Linux em x86 e no UNIX:Fim da mudança

    1. Abra o arquivo qm.ini do gerenciador de filas em um editor de texto. O arquivo qm.ini está localizado em /var/mqm/qmgrs/queue_manager_name/qm.ini, em que queue_manager_name é o nome do intermediário que está associado ao gerenciador de filas.
    2. No final do arquivo qm.ini, cole a seguinte sub-rotina:
      XAResourceManager:
      Name=OracleXA
      SwitchFile=SwitchFilePath 
      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
    3. Na linha SwitchFile da sub-rotina, substitua SwitchFilePath pelo caminho completo do arquivo do comutador para seu sistema operacional. A tabela a seguir mostra o caminho de arquivo do arquivo do comutador para cada sistema operacional, em que install_dir é o local no qual o intermediário está instalado.
      Sistema operacional Caminho do arquivo de chave
      HP-UX em PA-RISC install_dir/merant/lib/UKor8dtc20.sl
      Todas as outras plataformas install_dir/merant/lib/UKor8dtc20.so

      O arquivo de chave é fornecido pelo WebSphere Message Broker.

    4. Na linha XAOpenString, substitua os seguintes valores pelos valores apropriados à sua configuração:
      • MyServerName é o nome do Oracle Server.
      • MyHostName é o nome do host TCP/IP que hospeda o banco de dados Oracle.
      • 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 deve ser o nome de usuário que o intermediário utiliza para conectar-se ao banco de dados. O nome de usuário que o intermediário utiliza pode ser definido de várias maneiras. Se você utilizar o parâmetro -u no comando mqsicreatebroker ao criar o intermediário, este nome de usuário será utilizado para conectar-se ao banco de dados, a menos que o comando mqsisetdbparms tenha sido utilizado para associar um nome de usuário e senha específicos a um DSN (Nome de Origem de Dados) específico. Se você não utilizar o parâmetro -u no comando mqsicreatebroker, nem no comando mqsisetdbparms, o nome utilizado será o nome de usuário do serviço do intermediário, definido com o parâmetro -i no comando mqsicreatebroker.
      • MyPassword é a senha associada ao nome de usuário.
      • MyDataSourceName é o nome da origem de dados ODBC do banco de dados.
    5. Aceite os valores padrão para todas as demais linhas na sub-rotina. Por exemplo, no AIX:
      XAResourceManager:
      Name=OracleXA
      SwitchFile=/opt/mqsi/merant/lib/UKor8dtc20.so
      XAOpenString=ORACLE_XA+SQLNET=diaz
         +HostName=diaz.hursley.ibm.com
         +PortNumber=1521+Sid=diaz
         +ACC=P/wbrkuid/wbrkpw
         +sestm=100+threads=TRUE
         +DataSource=MYDB+DB=MYDB+K=2+
      XACloseString=
      ThreadOfControl=THREAD

    Windows platform No Windows:

    1. No menu Iniciar, abra a ferramenta de administração gráfica para sua versão do WebSphere MQ:
      • WebSphere MQ Versão 5.3: Serviços do WebSphere MQ
      • WebSphere MQ Versão 6: WebSphere MQ Explorer
    2. Abra a caixa de diálogo Propriedades do gerenciador de filas, em seguida, abra a página Recursos (Versão 5.3) ou Gerenciadores de Recursos XA (Versão 6).
    3. No campo SwitchFile, digite o caminho completo para o arquivo de chave, conforme mostrado no exemplo a seguir; em que install_dir é o local onde o intermediário está instalado:
      install_dir\bin\UKor8dtc20.dll
    4. No campo XAOpenString, cole a seguinte cadeia:
      ORACLE_XA+SQLNET=MyServerName
         +HostName=MyHostName
         +PortNumber=MyPortNumber
         +Sid=MySID
         +ACC=P/MyUserId/MyPassword+sestm=100+threads=TRUE
         +DataSource=MyDataSourceName
         +DB=MyDataSourceName+K=2+
    5. No campo XAOpenString, substitua os valores por valores que sejam apropriados para sua configuração:
      • MyServerName é o nome do Oracle Server.
      • MyHostName é o nome do host TCP/IP que hospeda o banco de dados Oracle.
      • 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 deve ser o nome de usuário que o intermediário utiliza para conectar-se ao banco de dados. O nome de usuário que o intermediário utiliza pode ser definido de várias maneiras. Se você utilizar o parâmetro -u no comando mqsicreatebroker ao criar o intermediário, este nome de usuário será utilizado para conectar-se ao banco de dados, a menos que o comando mqsisetdbparms tenha sido utilizado para associar um nome de usuário e senha específicos a um DSN (Nome de Origem de Dados) específico. Se você não utilizar o parâmetro -u no comando mqsicreatebroker, nem no comando mqsisetdbparms, o nome utilizado será o nome de usuário do serviço do intermediário, definido com o parâmetro -i no comando mqsicreatebroker.
      • MyPassword é a senha associada ao nome de usuário.
      • MyDataSourceName é o nome da origem de dados ODBC do banco de dados.
      Por exemplo:
      ORACLE_XA+SQLNET=diaz
         +HostName=diaz.hursley.ibm.com
         +PortNumber=1521+Sid=diaz
         +ACC=P/wbrkuid/wbrkpw
         +sestm=100+threads=TRUE
         +DataSource=MYDB+DB=MYDB+K=2+
    6. Aceite os valores padrão para todos os demais campos da página.
  3. Pare, em seguida, reinicie o gerenciador de filas para aplicar as alterações, porque qm.ini é somente leitura durante a execução do gerenciador de filas.
    Para parar e, em seguida, reiniciar o gerenciador de filas, digite os seguintes comandos, em que queue_manager_name é o nome do gerenciador de filas:
    endmqm queue_manager_name
    strmqm queue_manager_name

    Quando o gerenciador de filas for reiniciado, verifique o log do gerenciador de filas em busca que algum aviso associado ao reinício. Os arquivos de log estão localizados em /var/mqm/qmgrs/queue_manager_name/errors, em que queue_manager_name é o nome do gerenciador de filas reiniciado.

    Quando o gerenciador de filas for reiniciado com êxito, as alterações feitas em qm.ini serão aplicadas.
O Oracle agora está configurado para coordenação global com um gerenciador de filas de 32 bits que coordena transações.
Em seguida: você pode implementar fluxo de mensagens coordenadas globalmente no intermediário.
Tarefas relacionadas
Configurando Fluxos de Mensagens Coordenados Globalmente
Configurando a Coordenação Global de Transações (two-phase commit)
Referências relacionadas
Bancos de Dados Suportados
Comando mqsicreatebroker
Comando mqsisetdbparms
Informações relacionadas
Centro de Informações On-line do WebSphere MQ Versão 6
Página da Web da Biblioteca do WebSphere MQ
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Última atualização : 2009-02-13 16:11:37

ac00910_