Criando uma Entrada de Provedor JDBC para um Banco de Dados DB2

Os nós DatabaseRoute e DatabaseRetrieve constroem suas conexões JDBC usando detalhes da conexão armazenados no registro do intermediário, que contém configurações padrão do provedor DBMS JDBC. Use as instruções a seguir para criar uma entrada de provedor JDBC caso você esteja usando um Banco de Dados Universal DB2.

Você pode utilizar o comando mqsicreateconfigurableservice, que é fornecido no seguinte script, para criar uma nova entrada de provedor JDBC chamada SIMPLERROUTEDB. Esta entrada é referenciada no campo de propriedades Nome da Origem dos Dados nos nós de banco de dados que são usados na amostra. As instruções a seguir também configuram a entrada do provedor JDBC com um identificador de usuário e uma senha para o broker usar ao acessar o banco de dados.

  1. Crie uma entrada do provedor JDBC para o banco de dados:

    1. Inicie o intermediário e certifique-se de que um grupo de execução tenha sido implementado para o intermediário. Por exemplo, para iniciar um intermediário, abra uma janela do console de comando na qual você pode executar os comandos do WebSphere Message Broker, e digite o seguinte comando:
      mqsistart MB8BROKER
    2. Abra um novo documento em um editor de texto, copie e cole o seguinte script, que cria a entrada do provedor JDBC SIMPLERROUTEDB para fornecer acesso ao banco de dados JDBC para a amostra Simplified Database Routing no documento. Deve-se substituir os marcadores a seguir no script por valores apropriados para seu ambiente.
      • <JARS URL> O caminho do diretório local no sistema no qual o broker está em execução, onde o arquivo JAR que contém a classe de driver tipo 4 está localizado. Os locais a seguir são os locais padrão:
        • No Windows: C:\Program Files\IBM\SQLLIB\java
        • No Linux: sqllib/java, por exemplo, /home/db2inst1/sqllib/java/
      • <PORT NUMBER> O número da porta na qual o servidor de banco de dados está atendendo. O padrão do DB2 é 50000.
      • <SERVER NAME> O nome do host no qual o DB2 está em execução; por exemplo, localhost.
      mqsideleteconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB
      mqsicreateconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB
      -n connectionUrlFormat,databaseName,description,jarsURL,portNumber,serverName,
      type4DatasourceClassName,type4DriverClassName
      -v "jdbc:db2://[serverName]:[portNumber]/[databaseName]:user=[user];password=[password];,
      SROUTEDB,Simplified Database Routing Sample Database,<JARS URL>,<PORT NUMBER>,
      <SERVER NAME>,com.ibm.db2.jcc.DB2DataSource,com.ibm.db2.jcc.DB2Driver" 
      
      Nota: O script acima consiste de apenas dois comandos, cada qual devendo iniciar e terminar na própria linha separada. Portanto, quando copiar e colar o script, o script inteiro deverá ocupar apenas duas linhas, da seguinte forma:
      mqsideleteconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB
      
      mqsicreateconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB -n connectionUrlFormat,databaseName,description,jarsURL,portNumber,serverName,type4DatasourceClassName,type4DriverClassName -v "jdbc:db2://[serverName]:[portNumber]/[databaseName]:user=[user];password=[password];,SROUTEDB,Simplified Database Routing Sample Database,<JARS URL>,<PORT NUMBER>,<SERVER NAME>,com.ibm.db2.jcc.DB2DataSource,com.ibm.db2.jcc.DB2Driver"
      
      Se o script não for copiado e colado como duas linhas, as tentativas de executá-lo resultarão em um erro como " -n não reconhecido como um programa válido....". Isso ocorre porque o sistema identifica incorretamente cada nova linha como início de um novo comando.

      O fluxo contém um nó DatabaseRetrieve, por isso use a classe com.ibm.db2.jcc.DB2DataSource em vez de com.ibm.db2.jcc.DB2XADataSource.

    3. Salve o arquivo. As instruções a seguir supõem que o arquivo simplifieddbrouting.bat tenha sido chamado
    4. No console de comandos, navegue até a pasta que contém simplifieddbrouting.bat e digite o seguinte comando para executar o script:
      simplifieddbrouting.bat

      Ao executar o script, ele executa as seguintes tarefas:

      • Exclui a entrada JDBCProvider existente chamada SIMPLERROUTEDB.
      • Cria uma nova entrada JDBCProvider chamada SIMPLERROUTEDB para uso pela amostra de Roteamento de Banco de Dados Simplificado. As configurações padrão têm como destino um DB2 DBMS, usando a classe do driver JDBC tipo 4 desse fornecedor
    5. Aguarde a conclusão do script. Se estiver executando o script pela primeira vez, a mensagem a seguir é exibida:
      BIP8984W: Nome do objeto de serviço configurável
      'JDBCProviders : SIMPLERROUTEDB' não foi localizado.
      O usuário tentou excluir ou modificar um nome de objeto de serviço configurável que não
      existe.
      Verifique os nomes dos serviços configuráveis existentes utilizando o comando mqsireportproperties. 
      Em seguida, modifique o nome do objeto do recurso externo e emita novamente o comando.
      
      BIP2087E: O intermediário MB8BROKER foi incapaz de processar a mensagem de configuração interna.
      Toda a mensagem de configuração interna falhou ao ser processada com êxito.
      A mensagem de configuração interna falhou para ser processada,
      utilize as mensagens seguintes a esta mensagem para determinar os
      motivos para a falha.
      
      BIP8036E: Resposta negativa recebida.
      Este comando envia uma mensagem de configuração interna para o
      intermediário, a resposta recebida indicou que a mensagem de
      configuração interna foi malsucedida.
      Verifique se o transporte WebSphere MQ está disponível. Verifique o
      log do sistema para obter informações adicionais.
      
      Ignore essa mensagem. A mensagem é exibida porque o script tentou excluir uma entrada de registro JDBCProvider existente chamada SIMPLERROUTEDB antes dele recriar a entrada. Se você não tiver executado o script antes, a entrada não será localizada no registro.
    6. Você pode digitar o seguinte comando para verificar se o registro de intermediário padrão foi corretamente atualizado com a entrada JDBCProvider SIMPLERROUTEDB da amostra:
      mqsireportproperties MB8BROKER -o SIMPLERROUTEDB -c JDBCProviders -r

      Caso a atualização tenha sido bem sucedida, a saída da propriedade relatada, a partir do comando, corresponde ao seguinte exemplo:

      JDBCProviders
        SIMPLERROUTEDB
      
      connectionUrlFormat='jdbc:db2://[serverName]:[portNumber]/[databaseName]:user=[user];password=[password];'
          connectionUrlFormatAttr1=''
          connectionUrlFormatAttr2=''
          connectionUrlFormatAttr3=''
          connectionUrlFormatAttr4=''
          connectionUrlFormatAttr5=''
          databaseName='SROUTEDB'
          databaseType='default_Database_Type'
          databaseVersion='default_Database_Version'
          description='Simplified Database Routing Sample Database'
          environmentParms='default_none'
          jarsURL='C:\Program Files\IBM\SQLLIB\java'
          portNumber='50000'
          securityIdentity='default_User@default_Server'
          serverName='localhost'
          type4DatasourceClassName='com.ibm.db2.jcc.DB2DataSource'
          type4DriverClassName='com.ibm.db2.jcc.DB2Driver'
      
      BIP8071I: Conclusão do comando bem-sucedido.
  2. Para especificar o identificador de usuários e a senha a associar ao provedor JDBC SIMPLERROUTEDB, use os comandos mqsisetdbparms e mqsichangeproperties. Esse identificador de usuários deve ser o mesmo identificador de usuários usado ao criar o banco de dados.

    1. Insira o comando a seguir para associar o identificador de usuários e a senha a uma identidade de segurança:
      mqsisetdbparms MB8BROKER -n jdbc::mySecurityIdentity -u <ID do usuário> -p <senha>
    2. Insira o comando a seguir para associar a identidade de segurança, definida na etapa anterior, à propriedade securityIdentity do provedor JDBC SIMPLERROUTEDB:
      mqsichangeproperties MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB -n securityIdentity -v
      mySecurityIdentity
    3. Deve-se parar e reiniciar o broker para que as alterações no provedor JDBC sejam disponibilizadas para um fluxo de mensagens já implementado. Se já tiver implementado a amostra, pare e reinicie o intermediário.

    Para obter informações adicionais, consulte Ativando as Conexões JDBC com os Bancos de Dados na documentação do WebSphere Message Broker e a seção "Disponibilizando o Serviço do Provedor JDBC ao Nó DatabaseRoute" em Nó DatabaseRoute na documentação do WebSphere Message Broker.

Voltar a Configurando o DB2

Voltar para Configurando o Banco de Dados

Voltar para o Início da Amostra