Comando mqsicreatebroker

Plataformas Suportadas

Finalidade

O comando mqsicreatebroker:
  • Cria um gerenciador de filas do WebSphere MQ, exceto no z/OS, se ainda não existir algum.
    Nota:
    1. Se um gerenciador de filas do WebSphere MQ for criado como resultado da utilização do comando mqsicreatebroker, a DLQ padrão fornecida pelo WebSphere MQ (SYSTEM.DEAD.LETTER.QUEUE) será automaticamente ativada. As definições de segurança são iguais às de outras filas do WebSphere MQ específicas do intermediário.

      Se você optar por criar o gerenciador de filas separadamente, deverá configurar uma DLQ (Dead Letter Queue). A DLQ é referida pelo WebSphere Message Broker quando ocorrem erros no processamento de mensagens nos fluxos de mensagens.

      Se uma mensagem em um fluxo de mensagens definido pelo usuário ou no modelo de publicação/assinatura não puder ser processada, ela será roteada para essa DLQ como um último recurso. Se você preferir que a mensagem seja recuperada para a fila de entrada, descontinuando efetivamente o fluxo de mensagens até que o problema seja resolvido, será necessário desativar a DLQ.

      O comando mqsideletebroker não exclui essa fila (a menos que o gerenciador de filas seja excluído).

    2. Se estiver utilizando um gerenciador de filas do WebSphere MQ que foi criado independentemente do comando mqsicreatebroker, será possível definir clusters, se você preferir.Isto simplifica a configuração na maioria dos casos.

  • Inicia o gerenciador de filas do WebSphere MQ, exceto no z/OS, se ainda não estiver em execução.

    Se o gerenciador de filas for criado por este comando, ele não será iniciado como um serviço do Windows; portanto, ele será interrompido caso efetue log off. Para evitar que isso ocorra, é necessário permanecer conectado ou alterar o status de inicialização do serviço do gerenciador de filas. (Se você travar sua estação de trabalho, o gerenciador de filas do WebSphere MQ não será parado).

  • Cria as filas específicas para intermediário doWebSphere MQ, caso ainda não existam.
  • Cria tabelas do banco de dados para o intermediário, se ainda não existirem, ou inclui linhas específicas nesse intermediário em tabelas existentes.
  • Em plataformas Windows, instala um serviço sob o qual o intermediário será executado.
  • Cria um registro para o componente no registro do intermediário.

Sintaxe

Plataformas Windows, Sistemas Linux e UNIX

Comando do Console do z/OS

Parâmetros

brokername
(Obrigatório) O nome do intermediário que você deseja criar. Este deve ser o primeiro parâmetro e faz distinção entre maiúsculas e minúsculas em sistemas Linux e UNIX.

No z/OS, se você criar um nome de intermediário em letras maiúsculas, também deverá utilizar esse nome em maiúsculas para seu intermediário no workbench.

Para saber quais restrições do conjunto de caracteres podem ser utilizadas, consulte Caracteres Permitidos em Comandos.
-i ServiceUserID
(Obrigatório - Plataformas Windows e sistemas Linux e UNIX) O ID do usuário sob o qual o intermediário será executado.

Pode ser especificado em qualquer sintaxe válida do username. Em plataformas Windows, são:

  • domain\username
  • \\server\username
  • .\username
  • username

Em sistemas Linux e UNIX, apenas o último formato, username, é válido.

Se você utilizar o formato não qualificado para este ID do usuário (username) em plataformas Windows, o sistema operacional pesquisa o ID do usuário em todo o seu domínio, começando com o sistema local. Essa pesquisa pode levar algum tempo para concluir.

O ServiceUserID especificado deve ser um membro do grupo local mqbrkrs. Em plataformas Windows, ele pode ser membro direto ou indireto do grupo. O ServiceUserID também deve ter autorização para acessar o diretório home (em que o WebSphere Message Broker foi instalado), e o diretório de trabalho (se especificado pelo sinalizador -w).

Em plataformas Windows, se você especificar que o intermediário deve ser executado como um aplicativo confiável do WebSphere MQ (sinalizador -t), também deverá incluir esse ID de usuário no grupo mqm. Em sistemas Linux e UNIX, especifique o ServiceUserID como mqm se você configurar o sinalizador -t.

Os requisitos de segurança para ServiceUserID são detalhados em Requisitos de Segurança para Plataformas Windows.

Se você utilizar esse ID de usuário para acesso ao banco de dados (ou seja, você não especificar um ID de usuário diferente com o sinalizador -u) e estiver utilizando o SQL Server para seu banco de dados, você deverá criar esse ID de usuário como um ID de login do SQL Server e fornecer o acesso correto antes de criar o intermediário (consulte Considerando a Segurança para um Intermediário para obter detalhes adicionais). Se o banco de dados do intermediário existir no DB2 e esse ID de usuário não for conhecido pelo DB2, o DB2 o criará automaticamente.

-a ServicePassword
(Obrigatório - Plataformas Windows e sistemas Linux e UNIX) A senha para o ServiceUserID.

Para compatibilidade com os sistemas existentes, você ainda pode especificar <password>. Entretanto, se não especificar uma senha com este parâmetro ao executar o comando, será solicitado que você digite uma senha durante sua chamada e digite a senha uma segunda vez para verificar se ela foi digitada corretamente.

Em sistemas Linux e UNIX, -a é obrigatório para compatibilidade de plataformas Windows, mas não é utilizado em relação ao ServiceUserID; ele é utilizado como um padrão apenas se -p não for especificado. (Veja as notas sobre o parâmetro -p para obter detalhes adicionais).

-q QueueManagerName
(Obrigatório) O nome do gerenciador de filas associado a este intermediário. Utilize o mesmo nome para seu intermediário e o gerenciador de filas para simplificar a organização e a administração de sua rede. Nomes de gerenciadores de filas são limitados a 48 caracteres e fazem distinção entre maiúsculas e minúsculas.

Início da mudançaCada intermediário deve ter seu próprio gerenciador de filas exclusivo. Um intermediário não pode compartilhar um gerenciador de filas com outro intermediário.Fim da mudança

Se o gerenciador de filas ainda não existir, ele será criado por este comando. Ele não será criado como o gerenciador de filas padrão; se deseja que este gerenciador de filas seja o gerenciador de filas padrão neste sistema, você deve criar o gerenciador de filas antes de emitir este comando ou alterar as definições deste gerenciador de filas a fim de torná-lo padrão. Utilize o WebSphere MQ Explorer ou o snap-in do WebSphere MQ Services, dependendo da versão do WebSphere MQ que estiver utilizando.

O atributo do gerenciador de filas MAXMSGLN (comprimento máximo de mensagens que podem ser colocadas em filas) é atualizado para 100 MB. Isto é feito independentemente de o gerenciador de filas ter sido criado por este comando.

Para saber quais restrições do conjunto de caracteres podem ser utilizadas, consulte Caracteres Permitidos em Comandos.

-n DataSourceName
(Obrigatório - Plataformas Windows e sistemas Linux e UNIX) O DSN (Data Source Name) do banco de dados no qual as tabelas do intermediário são criadas. Este deve ser o DSN, não o nome do banco de dados, se você não tiver utilizado o mesmo nome para ambos.

Esse banco de dados já deve existir. É preciso criar uma conexão ODBC de DSN do Sistema para esse DSN, se isso ainda não tiver sido feito.

Se você possui um banco de dados DB2 no Linux, digite o nome do alias de banco de dados BD apropriado; um ODBC DSN não é requerido.

-u DataSourceUserID
(Opcional - Plataformas Windows e sistemas Linux e UNIX) O ID do usuário com o qual os bancos de dados que contêm as tabelas do intermediário e os dados do usuário serão acessados. Caso ele não seja especificado, o padrão utilizado será o valor especificado por -i.

Este ID do usuário deve ter autoridade para criar tabelas neste banco de dados, e para leitura e gravação nestas tabelas.

Em plataformasWindows, caso seu banco de dados do intermediário existir no DB2, e este ID de usuário não for conhecido pelo DB2, ele será criado para você dentro do DB2. Em sistemas Linux e UNIX, o usuário do serviço deve ter recebido anteriormente o privilégio correto. Se seu banco de dados for SQL Server, será necessário criar esse ID do usuário como um ID de login do SQL Server e fornecer-lhe o acesso correto antes de criar o intermediário (consulte Requisitos de Segurança para Plataformas Windows para obter detalhes adicionais).

Se você tiver um banco de dados do aplicativo no DB2 que foi criado por esse ID de usuário ou para o qual esse ID tem autoridade apropriada de leitura, gravação ou criação, os fluxos de mensagens em execução nesse intermediário poderão acessar e manipular os dados do aplicativo contidos nele sem precisar especificar nomes explícitos de esquemas.

Início da mudança-n DB2LocationFim da mudança
Início da mudança(Obrigatório - z/OS) O local do banco de dados onde as tabelas do intermediário são criadas. Fim da mudança
Início da mudança-u DB2TableOwnerFim da mudança
Início da mudança(Requerido - z/OS) O ID do usuário com o qual os bancos de dados que contêm as tabelas do intermediário e os dados do usuário devem ser acessados.

Este ID do usuário deve ter autoridade para criar tabelas neste banco de dados, e para leitura e gravação nestas tabelas.

Se você tiver um banco de dados do aplicativo no DB2 que foi criado por esse ID de usuário ou para o qual esse ID tem autoridade apropriada de leitura, gravação ou criação, os fluxos de mensagens em execução nesse intermediário poderão acessar e manipular os dados do aplicativo contidos nele sem precisar especificar nomes explícitos de esquemas.

Fim da mudança
-p DataSourcePassword
(Opcional - Plataformas Windows e sistemas Linux e UNIX) A senha do ID do usuário com o qual os bancos de dados que contêm as tabelas do intermediário e os dados do usuário serão acessados. Se não for especificada, será assumido como padrão ServicePassword especificado por -a.

Para compatibilidade com os sistemas existentes, você ainda pode especificar <password>. Entretanto, se não especificar uma senha com este parâmetro ao executar o comando, será solicitado que você digite uma senha durante sua chamada e digite a senha uma segunda vez para verificar se ela foi digitada corretamente.

Para DB2 em sistemas Linux e UNIX, -u e -p podem ser especificados como cadeias vazias (duas aspas duplas ""). Nesse caso, o DB2 concede a WebSphere Message Broker os privilégios do ServiceUserID que resulta em uma conexão com o banco de dados como "já verificada". Se você especificar-a como uma cadeia vazia, além de -u e -p, nenhuma senha será armazenada pelo WebSphere Message Broker, criando a conexão mais segura.

-s UserNameServerQueueManagerName
(Opcional) O nome do gerenciador de filas do WebSphere MQ que está associado ao Servidor de Nome de Usuário. Você deve especificar este parâmetro caso requeira serviços de autenticação ou controle de acesso de publicação/assinatura. Se não estiver especificado, o intermediário assumirá que não existe nenhum Servidor de Nome de Usuário definido.
-j
(Opcional) Você deve especificar este sinalizador juntamente como parâmetro -s UserNameServerQueueManagerName para ativar o controle de acesso de publicação/assinatura.
-w Workpath
(Opcional - Plataformas Windows e sistemas Linux e UNIX) O diretório no qual os arquivos de trabalho para esse intermediário são armazenados. Se essa opção não for especificada, os arquivos serão armazenados no caminho de trabalho padrão, especificado durante a instalação do produto. Se especificado, é necessário criar este diretório antes de iniciar o intermediário. Em plataformas Windows, ele não pode estar em uma unidade de rede.

Este diretório também é utilizado para registros de rastreio criados quando o rastreio estiver ativo. Eles são gravados em um subdiretório log, que deve ser criado antes de iniciar o intermediário.

Os logs de erros gravados pelo intermediário quando um processo é finalizado anormalmente são armazenados neste diretório. Em plataformas Windows, utilize essa opção para especificar um diretório em uma unidade diferente daquela na qual o produto está instalado.

O registro de erros é desvinculado e continua se expandindo. Verifique esse diretório periodicamente e limpe as informações de erro antigas.

Não é possível alterar esta opção utilizando o comandomqsichangebroker. Se você desejar especificar ou alterar o workpath exclua e recrie o intermediário.

-t
(Opcional - Plataformas Windows e sistemas Linux e UNIX) O intermediário é configurado para ser executado como um aplicativo confiável do WebSphere MQ.

Se você especificar essa opção em plataformas Windows, inclua o ServiceUserID (identificado pelo sinalizador -i) no grupo mqm. Se você especificar essa opção no HP-UX e no Solaris, deverá especificar ServiceUserID como mqm. Para obter detalhes adicionais sobre como utilizar aplicativos confiáveis do WebSphere MQ, consulte WebSphere MQ Intercommunication.

-m
(Opcional - Plataformas Windows e sistemas Linux e UNIX) Migra um intermediário do WebSphere MQ Publicação/Assinatura existente. Se você especificar esta opção, o gerenciador de filas identificado por -q deve ser o gerenciador de filas utilizado pelo intermediário do WebSphere MQ Publicação/Assinatura.
-l UserLilPath
(Opcional - Plataformas Windows e sistemas Linux e UNIX) Uma lista de caminhos (diretórios) a partir dos quais o intermediário carrega LILs (Loadable Implementation Libraries) para nós de processamento de mensagens definidos pelo usuário.

Você deve criar seu próprio diretório para armazenar seus arquivos .lil ou .jar. Não salve-os no diretório de instalação do WebSphere Message Broker.

Se você especificar mais de um diretório adicional, eles deverão ser separados pelo separador de caminho padrão específico da plataforma (ponto-e-vírgula (;) em plataformas Windows, dois-pontos (:) em sistemas Linux e UNIX).

Você não pode incluir variáveis de ambiente neste caminho: se fizer isso, elas serão ignoradas.

-g ConfigurationTimeout
(Opcional) O período de tempo (em segundos) que um grupo de execução no intermediário tem permissão para aplicar uma alteração na configuração (por exemplo, uma atualização implementada a partir do workbench).

Quando um fluxo de mensagens estiver processando uma mensagem do aplicativo, ele não poderá responder a uma alteração de configuração. Se qualquer um dos fluxos de mensagens no grupo de execução que tiver recebido solicitação para alterar sua configuração não concluir o processamento de uma mensagem do aplicativo e aplicar a alteração da configuração neste tempo limite, o grupo de execução retornará uma resposta negativa à mensagem de configuração implementada.

O valor definido para este tempo limite depende do carregamento do sistema (incluindo utilização da CPU) e do carregamento de cada grupo de execução. Você pode fazer uma estimativa inicial implementando toda a configuração do intermediário. O tempo gasto para que isso seja concluído com êxito fornece uma indicação do valor mínimo que deve ser definido.

O valor é especificado em segundos e pode variar de 10 a 3600. O valor padrão é 300.

A soma de ConfigurationTimeout e de ConfigurationDelayTimeout (descritos abaixo) representa o período máximo de tempo que um intermediário tem permissão para processar uma mensagem de configuração implementada antes de gerar uma resposta negativa.

-k ConfigurationDelayTimeout
(Opcional) O período de tempo (em segundos) em que um intermediário tem permissão para processar uma alteração mínima na configuração (por exemplo, uma atualização implementada a partir do workbench).

Isso representa o tempo gasto para que uma mensagem de configuração mínima implementada seja processada pelo intermediário e seus grupos de execução e depende de retardos da rede do gerenciador de filas, da carga no gerenciador de filas do intermediário e da carga do sistema.

É possível estimar este valor emitindo um comando para solicitar uma alteração de configuração simples, por exemplo:
  • Em plataformas Windows e sistemas Linux e UNIX
    mqsireporttrace brokerName -e "Execution Group Name" -u
  • No z/OS
    F MQP1BRK,reporttrace u=yes,e='exgrp1'

O tempo de resposta de cada grupo de execução se difere, de acordo com o carregamento do sistema e do carregamento de seus próprios processos. O valor definido deve refletir o tempo de resposta mais longo gasto por qualquer grupo de execução para responder. Se o valor definido for muito baixo, o intermediário retornará uma resposta negativa e poderá emitir mensagens de erro no registro de erros local.

O valor é especificado em segundos e pode variar de 10 a 3600. O valor padrão é 60.

Se o intermediário estiver em um sistema de produção, aumente os valores para ConfigurationTimeout e ConfigurationDelayTimeout para permitir que mensagens do aplicativo que estão sendo processadas por fluxos de mensagens sejam concluídas antes da aplicação da alteração de configuração.

Se o intermediário estiver em um sistema de desenvolvimento ou de teste, talvez você queira reduzir tempos limites (em específico, o ConfigurationTimeout) para aprimorar os tempos de resposta recebidos e para forçar uma resposta de um intermediário que não esteja mostrando o comportamento esperado. No entanto, a redução dos valores de tempo limite reduz a probabilidade de implementação bem-sucedida de uma alteração de configuração.

-P HTTPListenerPort
(Opcional - Plataformas Windows e sistemas Linux e UNIX) Digite o número da porta na qual o suporte a serviços da Web está atendendo.

Esse listener é iniciado pelo intermediário quando um fluxo de mensagens que inclui o suporte a serviços da Web é iniciado e possui um valor padrão de 7080.

Verifique se a porta especificada não foi especificada para nenhuma outra finalidade.

-v statisticsMajorInterval
(Opcional) O intervalo do cronômetro, em minutos, no qual as estatísticas e a contabilidade do WebSphere Message Broker são notificadas de que os registros de archive devem ser gerados. Para contabilidade interna, o intervalo válido é de 10 a 14400 minutos.

Um intervalo de zero minuto indica que a plataforma possui um método externo de notificação e não está utilizando um cronômetro interno no WebSphere Message Broker .

Início da mudança-1Fim da mudança
Início da mudança(Opcional - Apenas z/OS) O registro é transmitido, o que cria apenas o registro do intermediário.Fim da mudança
Início da mudança-2Fim da mudança
Início da mudança(Opcional - Apenas z/OS) WebSphere MQ é transmitido, o que cria as filas WebSphere MQ do intermediário.Fim da mudança
Início da mudança-3Fim da mudança
Início da mudança(Opcional - Apenas z/OS) DB2 é transmitido, o que cria apenas as tabelas e índices DB2 do intermediário.Fim da mudança
-y LdapPrincipal
(Opcional - Todas as plataformas, mas obrigatório quando LdapCredentials for fornecido.) O usuário proprietário para acesso a um diretório LDAP opcional que contém o Contexto Inicial administrado pela JNDI para o provedor JMS.
-z LdapCredentials
(Opcional - Todas as plataformas, mas obrigatório quando LdapPrincipal for fornecido.) A senha do usuário para acesso ao LDAP.
-c ICUConverterPath
(Opcional) Um conjunto delimitado de diretórios para procurar conversores de páginas de códigos adicionais. Em sistemas Windows, o delimitador é ";". Em sistemas UNIX e Linux, o delimitador é ":". Os conversores de páginas de códigos devem ter o formato icudt32_codepagename.cnv ou em um pacote de dados ICU chamado icudt32.dat.
-x UserExitPath
(Opcional) Caminho que contém o local de todas as saídas do usuário a serem carregadas para grupos de execução de 31 bits nesse intermediário. Esse caminho é incluído no caminho de procura da biblioteca do sistema (PATH,LIBPATH,LD_LIBRARY_PATH,SHLIBPATH) apenas para o processo do grupo de execução.

Autorização

Em sistemas Windows, o ID do usuário utilizado para invocar esse comando deve ter autoridade de Administrator no sistema local.

Em sistemas UNIX, o ID do usuário utilizado para invocar esse comando deve ser um membro do grupo mqbrkrs.

Em sistemas z/OS, o ID do usuário utilizado para invocar esse comando deve ser um membro de um grupo que tenha acesso READ e WRITE ao diretório de componentes.

Utilizando LDAP: assegure-se de que o registro esteja protegido apropriadamente para evitar acesso não autorizado. A configuração das opções LdapPrincipal e LdapCredentials em mqsicreatebroker não é requerida para operação correta do intermediário. A senha não é armazenada em texto sem formatação no sistema de arquivo.

Filas do WebSphere MQ Criadas

  • SYSTEM.BROKER.ADMIN.QUEUE
  • SYSTEM.BROKER.CONTROL.QUEUE
  • SYSTEM.BROKER.EXECUTIONGROUP.QUEUE
  • SYSTEM.BROKER.EXECUTIONGROUP.REPLY
  • SYSTEM.BROKER.INTERBROKER.QUEUE
  • SYSTEM.BROKER.INTERBROKER.MODEL.QUEUE
  • SYSTEM.BROKER.MODEL.QUEUE
  • SYSTEM.BROKER.WS.INPUT
  • SYSTEM.BROKER.WS.REPLY
  • SYSTEM.BROKER.WS.ACK

A autoridade de acesso é concedida para o grupo WebSphere Message Broker grupo mqbrkrs a todas estas filas. Se a DLQ estiver ativada, ela também terá a mesma autoridade.

Tabelas Criadas do Banco de Dados

As tabelas do banco de dados que esse comando cria ou inclui são descritas em Conteúdo do Banco de Dados.

Respostas

Esse comando retorna as seguintes respostas:

  • BIP8011 Impossível criar dados de configuração
  • BIP8012 Impossível conectar aos componentes do sistema
  • BIP8014 O componente não pode ser criado
  • BIP8022 ID do usuário/senha inválidos
  • BIP8030 Incapaz de modificar os privilégios do ID do usuário
  • BIP8040 Impossível conectar ao banco de dados
  • BIP8048 Incapaz de iniciar o gerenciador de filas
  • BIP8050 Impossível criar o gerenciador de filas
  • BIP8051 Impossível criar fila
  • BIP8053 Impossível definir segurança para o gerenciador de filas
  • BIP8054 Impossível definir segurança para a fila
  • BIP8056 Gerenciador de filas desconhecido
  • BIP8070 Exceção de banco de dados
  • BIP8072 Exceção de banco de dados
  • BIP8073 Nome do intermediário inválido
  • BIP8084 Impossível criar diretório
  • BIP8086 Gerenciador de filas em utilização
  • BIP8087 O componente já existe
  • BIP8093 Gerenciador de filas sendo criado
  • BIP8094 Gerenciador de filas parando
Em algumas circunstâncias, você poderá ver a seguinte mensagem de erro emitida pelo DB2:
    (51002)[IBM][CLI Driver][DB2/NT]SQL0805N
    Package "NULLID.SQLLF000" was not found.  SQLSTATE=51002.

Este erro ocorre quando a ligação com o banco de dados não é bem-sucedida.

Em plataformas Windows, a ligação não é necessária para bancos de dados do intermediário, mas é exigida para bancos de dados do usuário. Se tiver criado o banco de dados utilizando o Centro de Controle do DB2, a ligação será concluída para você. Se você utilizar a interface de comando, ela não será concluída. Por exemplo, para o banco de dados MYDB, você cria ou cria novamente uma ligação digitando os seguintes comandos no prompt de comandos:

db2 connect to MYDB user db2admin using db2admin
db2 bind X:\sqllib\bnd\@db2cli.lst grant public
db2 connect reset

em que X: é a unidade na qual o DB2 está instalado.

Em plataformas UNIX a ligação é necessária para todos os bancos de dados. Para o banco de dadosWBRKBKDB, por exemplo, você pode efetivar isto digitando os seguintes comandos no prompt de comandos (em que <nome_do_usuário> é o ID do usuário com o qual a instância do banco de dados foi criada):

db2 connect to WBRKBKDB user db2admin using db2admin
db2 bind ~<nome_do_usuário>/sqllib/bnd/@db2cli.lst grant public CLIPKG 5
db2 connect reset

Se não estiver utilizado o ID de usuário e senha padrão do DB2 (db2admin), substitua esses valores no comando db2 connect com os valores corretos.

Se você executar o comando mqsicreatebroker pela segunda vez devido a uma falha na primeira vez, você receberá uma série de mensagens. Elas indicarão todos os itens que não puderem ser criados. Não deve haver efeitos prejudiciais como resultado disso. Por exemplo, desde que o motivo deste primeiro defeito tenha sido resolvido, tentar criar um intermediário que falhou na primeira vez deve resultar em um intermediário criado corretamente.

Exemplos

mqsicreatebroker WBRK_BROKER -i wbrkuid -a wbrkpw -q WBRK_QM -s WBRK_UNS_QM -n WBRKBKDB
mqsicreatebroker WBRK_BROKER -i wbrkuid -a wbrkpw -q WBRK_QM -n WBRKBKDB -t
mqsicreatebroker WBRK_BROKER -i wbrkuid -a wbrkpw -q WBRK_QM -n WBRKBKDB -x /opt/3rdparty/wmbexits
Início da mudança
Para criar um intermediário inteiro no z/OS:
mqsicreatebroker CSQ1BRK -q CSQ1 -u BRKUSER -n DBA0
Fim da mudança
Início da mudança
Para criar apenas tabelas e índices do DB2 no z/OS:
mqsicreatebroker CSQ1BRK -q CSQ1 -u BRKUSER -n DBA0 -2
Fim da mudança
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
an07080_