IBM DB2 Universal Database Notas sobre o Release Versão 8.2 FixPak 4 (equivalente à Versão 8.1 FixPak 11) e FixPaks subseqüentes Antes de utilizar estas informações e o produto suportado por elas, leia as informações gerais em Avisos. Este documento contém informações de propriedade da IBM. Elas são fornecidas sob um acordo de licença e são protegidas por leis de direitos autorais. As informações contidas nesta publicação não incluem garantias de produtos e as declarações fornecidas neste manual não devem ser interpretadas como tal. As publicações IBM podem ser solicitadas on-line ou através de seu representante IBM local. * Para solicitar publicações on-line, vá para o IBM Publications Center no endereço www.ibm.com/shop/publications/order * Para localizar o representante IBM mais próximo, acesse o IBM Directory of Worldwide Contacts no endereço www.ibm.com/planetwide Para solicitar publicações do DB2 a partir do departamento de Marketing e Vendas do DB2 nos Estados Unidos ou Canadá, ligue para 1-800-IBM-4YOU (426-4968), no Brasil, ligue para 0-800-7014-262. Quando o Cliente envia seus comentários, concede direitos não-exclusivos à IBM para usá-los ou distribuí-los da maneira que achar conveniente, sem que isso implique em qualquer compromisso ou obrigação para com o Cliente. Direitos Autorais International Business Machines Corporation 2002, 2005. Todos os direitos reservados. Índice Notas sobre o Release Sobre Este Release Novidades Deste Release Histórico de Correção dos Produtos Problemas de Compatibilidade Compatibilidade Reversa Compatibilidade do Produto Informações sobre Instalação, Migração, Upgrade e Configuração Requisitos de Hardware e Software Notas sobre Instalação Novas Opções para o Assistente Configuração do DB2 (Windows) Alterações para o Assistente Configuração do DB2 (Windows) Restrições Estendidas da Instalação de Segurança (Windows) O Caminho do Diretório Não Pode Conter Espaços em Branco (Linux e UNIX) Requisito do Red Hat Enterprise Linux 4 Níveis do JDK para DB2 UDB (Linux no IA64 e Linux on POWER) Descompactando Imagens de Instalação (Linux e UNIX) O DB2 UDB Não Permite um Caminho de Instalação que Não Esteja em Inglês (Windows) Fazendo Download e Descompactando FixPaks para Vários Produtos (Windows) Instalando o DB2 UDB a partir de Imagens de Instalação (Linux e UNIX) Instalando o DB2 UDB a partir de Imagens de Instalação (Windows) Espaço em Disco Requerido para uma Instalação de Arquivo de Resposta do DB2 UDB Restrições à Inclusão de Produtos Utilizando o Comando db2setup (Linux e UNIX) Ferramentas da Web do DB2 Ligação dos Pacotes do Query Patroller após Aplicar os FixPaks Instalação do Query Patroller no FixPak Nível 3 ou Posterior Instalação do Servidor Query Patroller Definindo um Novo Grupo de Partições do Banco de Dados no Query Patroller Instalação das Ferramentas do Cliente Query Patroller Recriando Versões Beta de Bancos de Dados Instalando Arquivos MDAC para Versões do Idioma Nacional do DB2 UDB Política de Licença do DB2 para o DB2 Universal Database Workgroup Server Edition Instalando Fontes Asiáticas Adicionais (Linux) Configurando o Development Center para Utilizar Java Development Kits (Linux) Criando IDs de Grupo e de Usuário em Distribuições United Linux 1.0 e SuSE Linux O Daemon do Sistema de Ajuda Não É Iniciado após a Instalação com o Comando db2_install (UNIX e Linux) Ready for Tivoli Enablement (UNIX) Ferramenta de Redução da Imagem de Instalação - db2iprune (Windows) Restrição de Instalação da Documentação do DB2 Universal Database, Versão 8 (Windows) Instalações Anteriores Atualizadas para o Nível Mais Recente (Windows) Requisitos de Sistema para o DB2 .NET Data Provider (Windows) Instalando o DB2 Versão 8 Clients e o DB2 Connect PE como Não-administrador (Windows) Notas de Migração Technote db2updv8 Após Executar db2updv8, Não É Suportado Retornar à V 8.1 Migração das Tabelas EXPLAIN Migrando o XML Extender de Versões Anteriores Migrando o DB2 Universal Database ao Utilizar o DataJoiner ou Replicação Migrando o DB2 Universal Database (Windows) Migrando um Banco de Dados do DB2 Versão 8 Windows de 32 Bits para o Windows de 64 Bits Migrando para o DB2 UDB Versão 8.2.2 a partir da Versão 7 em um Ambiente MSCS Migração do Banco de Dados (HP-UX no IA64) Informações sobre Desinstalação Desinstalando o DB2 UDB Silenciosamente (Windows) Código do Produto para Remoção do Centro de Informações do DB2 Utilizando uma Desinstalação Silenciosa (Windows) Limitações, Problemas e Soluções Alternativas Conhecidas Limitações db2look - Limitação para Espaço de Tabelas de Armazenamento Automático A Função da Tabela SNAP_GET_DB Retorna Resultados Incompletos IMPORT REPLACE Não Considera a Cláusula Not Logged Initially Campo Longo e Dados LOB Não Podem Ser Reorganizados com a Reorganização de Tabela Local Comportamento de Bloqueio em Cursores de Bloqueamento Pode Parecer Inconsistente nos Aplicativos Cliente Exportação de Dados com ODBC para Programa de Warehouse do Arquivo Tipos de Dados que Não São Suportados no Depurador SQL Integrado do Development Center Tipos Estruturados no Development Center Limitações do Development Center para Sistemas Operacionais de 64 Bits Development Center (Linux) Depurando Procedimentos Armazenados com Aspas Duplas Configurações de Caminho Necessárias para Ativar Rotinas Java para Compilação no Development Center Limitações do Development Center para Executar e Depurar Procedimentos Armazenados Java Simultaneamente O Método DB2SystemMonitor.getServerTimeMicros Não É Suportado Tempo de Execução do Compilador IBM XL C/C++ Deve Estar Instalado (Linux em Sistemas iSeries e pSeries, 64 bits) Universal JDBC Driver Tipo 2 Não É Suportado no DB2 UDB Versão 8.2.2 (Linux AMD64 ) Cursores em Aplicativos PHP Limitação da Palavra-chave ConnectNode para Configuração do CLI/ODBC Restrição da Função SQLColumns (CLI) Limitações de Opções de Ligação para Pacotes CLI Restrições a Utilitários CLI LOAD Criação do Banco de Dados do Catálogo de Ferramentas Não Suportada (Linux para AMD64) Criação do Banco de Dados do Catálogo de Ferramentas Não Suportada (AIX, Solaris Operating Environments e HP-UX) Limitações de Memória para o DB2 UDB Express e DB2 Workgroup Server Edition V8.2 Agendando um Processo do Warehouse a Ser Executado em Intervalos Limitações do Suporte SNA na Versão 8 Problema e Restrição do Plug-in de Segurança para Clientes do DB2 UDB (Windows) Defeitos ao Relatar um Login Bem-sucedido durante uma Tentativa de Conexão (AIX) ID de Usuário com Duas Partes Não Suportado (Windows ME) A Página Carregar e Importar Colunas Não Suporta Caracteres DBCS nos Arquivos IXF Ferramentas GUI para Sistemas Operacionais Linux em AMD64 Configurações Mínimas de Exibição para Ferramentas da GUI Exibição Incorreta de Caracteres GB18030 na Barra de Título de uma Janela Não Particionar Tabelas do Centro de Catálogo de Informações Limitações do Query Patroller Quando DYN_QUERY_MGMT Está Desativado Tabelas de Resultados do Query Patroller Agora Utilizam o Esquema DB2QPRT Restrições do Indicador de Funcionamento Problemas e Soluções Alternativas Conhecidos Exportando para um Arquivo IXF com Índices em Colunas que Contenham Caracteres - e + Erro CLI0116E ou SQL0428N ao Chamar o API db2ReadLog Falha do Comando "db2gcf -k" no DB2 UDB Workgroup Server Edition Erro SQL1224 do Wrapper DRDA (AIX) Teclas de Atalho Não Funcionando no Microsoft Visual Studio .NET Framework 1.1 Código do Idioma Chinês Simplificado (AIX) Código do Idioma Chinês Simplificado (Red Hat Linux) Incompatibilidade do Merant Driver Manager (UNIX) NFS APAR IY32512 - Encadeamentos Não Disponíveis (AIX) Erro de Opção do Pré-compilador SQLFLAG (STD) Conjunto de Conexão Deve Ser Ativado ao Utilizar o Sysplex no DB2 Connect DB2 Connect Custom Advisor Falha na Criação do Banco de Dados do Catálogo de Ferramentas (HP-UX) Exibindo Caracteres Indianos nas Ferramentas da GUI do DB2 Ferramentas da GUI Não São Suportadas para Servidores zSeries (Linux) Coloque os Termos de Procura do DB2 Information Center entre Aspas se Contiverem Números Arquivo de Registro Não-gerado do Centro de Catálogo de Informações ao Importar Arquivos de Idioma com Tags Ligando Pacotes do Query Patroller Não-disponibilidade de Portas com o Query Patroller (Windows) Ambientes Seguros (Windows) Programas de Amostra do XML Extender Renomeados Decompondo Documentos no XML Extender que Contenham Nomes de Atributos e Elementos Não-exclusivos Diferenças entre SNA e TCP/IP ao Utilizar o DB2 Connect Atualizações de Documentação Administração: Implementação Configuração de Novo Roteamento de Cliente Automático (DB2_MAX_CLIENT_CONNRETRIES e DB2_CONNRETRIES_INTERVAL) Esclarecimento da Variável de Registro DB2TIMEOUT Diretórios Criados durante a Criação do Contêiner de Espaço de Tabelas Armazenamento Automático Definindo uma Coluna Gerada em uma Tabela Existente Variáveis de Registro Agregadas Considerações de Autenticação para Clientes Remotos Suporte a DIO (Direct I/O) e CIO (Concurrent I/O) Tecnologia de Distribuidor e Novo Roteamento de Cliente Automático Considerações sobre o Novo Roteamento de Cliente Automático para Catalogar em um Servidor DB2 Connect Suporte à Conta do Sistema Local (Windows) Suporte ao ID do Usuário com Duas Partes Detalhes de Autenticação de Kerberos Informações Adicionais para Suporte Kerberos Administração: Desempenho Comparação da Variável de Registro DB2_FORCE_FCM_BP em Ambientes de 32 Bits e de 64 Bits RUNSTATS Recomendado Após Criação da Tabela Novo Código de Razão para SQL1169N Estratégias de Otimização para Tabelas MDC Esclarecimento da Descrição de Parâmetros de Configuração NEWLOGPATH, MIRRORPATH e OVERFLOWLOGPATH Valor Padrão DB2_COLLECT_TS_REC_INFO O Utilitário Governor Escolhendo um Método de Reorganização de Tabelas Suporte para Página Grande da Memória FCM (AIX 5L 64 bits) Variável de Registro DB2_RESOURCE_POLICY Aceita um Novo Elemento Novas Variáveis de Ambiente do Sistema (Linux) Nova Variável de Registro de Comunicação Nova Variável de Desempenho Variáveis do Compilador SQL Atualizações de Parâmetros de Configuração Arquivo de Parâmetro de Configuração de Banco de Dados SQLDBCONF Alteração no Valor Padrão DB2_HASH_JOIN A Variável de Registro DB2NTNOCACHE É Reprovada Tabelas de Explicação e Organização de Informações de Explicação Diretrizes para Captura de Informações de Explicação Códigos de Retorno Adicionais da API db2CfgGet, Parâmetro collate_info Definição Automática do Tamanho Padrão de Pré-busca e Padrões de Atualização Administração: Planejamento Tabelas Armazenadas em Cluster no Intervalo Design de Espaço de Tabelas de Catálogo Códigos de Território e Páginas de Código Suportados Função XA Suportada pelo DB2 Universal Database Valores de TPM e tp_mon_name Atualizados para Formatos de Cadeia xa_open Ativando Tabelas de Conversão para Páginas de Códigos 923 e 924 Arquivos de Tabela de Conversão para Páginas de Código Compatíveis com Euro Referência da API Esclarecimento da Estrutura do Registro de Log Parâmetro oBackupsize da API db2Backup Suporte à Opção SYNCPOINT Novo Campo para a Estrutura SQLEDBDESC Correção no Novo Campo na Estrutura SQLB-TBSPQRY-DATA Desenvolvimento de Aplicativos: Construindo e Executando Aplicativos Amostras de Reconfiguração Dinâmica (AIX) Software de Desenvolvimento Suportado pelo Linux Customizando Opções de Pré-compilação e de Ligação para Procedimentos SQL Opção de Compilação C/C++ Requerida (Linux on POWER 64 Bits) Comandos de Compilação e Vinculação para Procedimentos Armazenados Micro Focus COBOL (HP-UX) Versão Mínima Suportada do Micro Focus COBOL (HP-UX) Definindo Variáveis de Ambiente para Procedimentos Armazenados do Micro Focus COBOL (Windows) Desenvolvimento de Aplicativos: CLI (Call Level Interface) Palavra-chave de Configuração CLI/ODBC Trusted_Connection Diagnóstico de Atualização da Tabela para Função SQLDescribeParam (CLI) Execução Assíncrona do Call Level Interface Atributo de Conexão SQL_ATTR_PING_DB Função SQLBindParameter (CLI) Função SQLMoreResults (CLI) Atributos de Ambiente Adicionais Requisito de Cursores Roláveis Dinâmicos Palavra-chave de Configuração CLI/ODBC RetCatalogAsCurrServer Palavra-chave da Configuração de ReceiveTimeout CLI/ODBC Atributo de Conexão SQL_ATTR_RECEIVE_TIMEOUT Palavra-chave de Configuração Reopt CLI/ODBC Atributo de Instrução e de Conexão SQL_ATTR_REOPT Palavra-chave da Configuração de CurrentPackageSet CLI/ODBC Atributo de Conexão SQL_ATTR_CURRENT_PACKAGE_SET Palavra-chave de Configuração MapBigintCDefault de CLI/ODBC Palavra-chave de Configuração DescribeOutputLevel de CLI/ODBC Desenvolvimento de Aplicativos: Aplicativos Clientes de Programação A Conectividade do Tipo 4 do DB2 Universal JDBC Driver com DB2 para VM/VSE Não É Suportada Centralizador de Conexão do DB2 Universal JDBC Driver e Balanceamento da Carga de Trabalho Sysplex Palavra-chave de Configuração CLI/ODBC OleDbReportIsLongForLongTypes Palavra-chave de Configuração CLI/ODBC OleDbSQLColumnsSortByOrdinal Grupo de Propriedades do DB2 Data Source para o IBM DB2 OLE DB Provider Sintaxe de URL Incorreta no Diagrama de Sintaxe DB2Binder Novo Roteamento Clientes do DB2 Universal JDBC Driver Customizando as Propriedades de Configuração do DB2 Universal JDBC Driver Função db2secFreeToken Removida Implementar Plug-ins de Segurança Customizados Cuidadosamente Plug-ins de Segurança APIs de Plug-ins de Segurança Convenções de Nomenclatura de Plug-in de Segurança (Linux e UNIX) Restrições para Bibliotecas de Plug-ins de Segurança Suporte ao Plug-in GSS-API para o DB2 Universal JDBC Driver Os Plug-ins de Segurança GSS-API Não Suportam Autenticação de Vários Fluxos Os Plug-ins de Segurança GSS-API Não Suportam Criptografia e Assinatura de Mensagens Encerramento Implícito de Transações em Aplicativos Independentes Suporte a Transações Distribuídas Desenvolvimento de Aplicativos: Aplicativos de Servidor de Programação Procedimentos CLR (Common Language Runtime) de Vários Conjuntos de Resultados Modos de Controle de Execução de Rotinas CLR (Common Language Runtime) (Cláusula EXECUTION CONTROL) Precisão e Escala Decimais Máximas em Rotinas CLR (Common Language Runtime) Referência a Comandos db2licm - Esclarecimento do Parâmetro do Comando de Ferramentas de Gerenciamento de Licença Exemplo do Comando RESTORE DATABASE do TSM Exemplos de Uso de db2demigdbd Correção de Nota de Uso do Comando db2ckbkp Convenções de Nomenclatura para Objetos de Banco de Dados e para IDs Comando REORGCHK Comando REORG INDEXES/TABLE Comando BACKUP DATABASE Migrando Bancos de Dados db2inidb - Inicializar um Comando de um Banco de Dados Espelhado Nota de Uso para o Comando db2iupdt Novo Parâmetro para o Comando db2sqljcustomize Novo Parâmetro para o Comando sqlj Monitoração e Resolução de Problemas das Atualizações do Comando (db2pd) Atualizações para o Comando SET CLIENT Atualizações para o Comando PRECOMPILE Atualizações para o Comando UPDATE HISTORY FILE Atualizações para os Comandos EXPORT e IMPORT Atualização para o Comando LOAD Modificadores de Tipo de Arquivo para o Utilitário de Carregamento Modificadores de Tipo de Arquivo para o Utilitário de Importação Comando ATTACH Comando RECOVER DATABASE Comando UPDATE HISTORY FILE db2updv8 - Comando Atualizar Banco de Dados para o Nível Atual da Versão 8 Formatando Arquivos de Interrupção (Windows) Movimentação de Dados Arquivos de Ligação Utilizados pelos Utilitários de Exportação, Importação e Carregamento Utilizando a Importação com Inserções em Buffer As Informações do Índice São Perdidas Quando o Utilitário de Importação É Utilizado Recuperação de Dados e High Availability Visão Geral de Backup Utilizando Backup Visão Geral da High Availability Disaster Recovery Suporte a Backup e Restauração de Plataforma Cruzada Fazendo Backup para Fita (Linux) Tivoli Storage Manager Restrições de Valores para os Parâmetros de Host Local e de Serviço Local do HADR Requisitos de Sistema Adicionais para High Availability Disaster Recovery Operações Não-replicadas para Recuperação de Dados e High Availability O HADR Não Suporta Registros Brutos Comparação entre o Monitor de Falhas e o Monitor de Funcionamento Desativando o Monitoramento de Falhas Data Warehouse Center Configurando o Ambiente do Cliente de Warehouse em Sistemas Operacionais AIX e Solaris Atualizando a Configuração do Gerenciador do Banco de Dados Antes de Instalar Transformadores de Warehouse Variável de Ambiente VW_NETRC Incluída ao Data Warehouse Center (UNIX) DB2 Data Warehouse Center Requer Banco de Dados no Formato Unicode Definindo Origens e Destinos do Warehouse do DB2 Atualizações no Tutorial do Business Intelligence Definindo o Limite de Limpeza para Arquivos de Registro do Warehouse Suporte do Data Warehouse Center para Carregamento do CURSOR Migração e Limitações de Bancos de Dados de Controle do Warehouse Unicode Alteração no Formato de Data para Coluna Modificada Definindo Transformadores Estatísticos no Data Warehouse Center Preparando a Instalação de Agentes do Warehouse Pré-requisito para o Agente de Warehouse do iSeries DB2 .NET Data Provider Suporte à Leitora de Dados Ativos Simultâneos Propriedade DB2Connection.ConnectionString DB2 Connect Alterar para a Negociação de Tipo de Autenticação Através de um Gateway Novo Cenário de Segurança Correções em Diagramas Development Center DB2 Development Center Versão 8.2 Requer Nível 9.2.9 do Distributed Debugger Restrição de Comprimento da Janela Alterar Intervalo de Variáveis do DB2 Development Center Restrições aos Drivers Tipo 2 e Tipo 4 do DB2 Universal Ferramentas da GUI Modificando o Caractere de Término de Instrução Status Não Disponível do Banco de Dados na Área de Janela Detalhes do Banco de Dados do Centro de Controle Gravação Padrão na Geração de Saída de Tabela (Criar Monitor de Eventos) Information Catalog Center Scripts de Amostra de Configuração Configuração do Servidor Web Suplemento da Instalação e Configuração Arquivo de Configuração do Nó do DB2 - db2nodes.cfg Variável de Registro DB2NOLIOAIO Substituída por DB2LINUXAIO (Linux) Servidor de Aplicativos para o DB2 UDB Ativação do DB2 Embedded Application Server Implementando o DB2 Web Tools E/S Direta em Dispositivos de Blocos (Linux) Daemon do DB2 Information Center (Linux e UNIX) Palavras-chave do Arquivo de Resposta e Arquivos de Amostra Códigos de Erros de Instalação do Arquivo de Resposta Contas de Usuário Requeridas para Instalação de Servidores DB2 (Windows) Suporte E/S Assíncronas (Linux) Comando db2ln Modificado para Criar Links de Biblioteca de 64 bits do DB2 UDB (Linux e UNIX) Query Patroller Atualização do Comportamento da Classe de Consulta Atualizações de Definições para Estados de Consultas Gerenciados Criar Tabelas de Explicação antes de Executar o Gerador de Dados Históricos do Query Patroller Verificando Arquivos de Registro do Query Patroller para Análise do Histórico Encerramento Anormal do Gerador de Dados Históricos Atualização Dinâmica de Classes de Consultas Comportamento de Consultas Aninhadas Limitações pelo Tipo de Instrução SQL Limitação de Resolução ao Utilizar o Terminal Services Client Suporte ao Novo Grupo para Envio de Consultas Limitações de Planejamento do Query Patroller Autorização Requerida para Utilizar o Comando RUN IN BACKGROUND QUERY Criando um Alias para uma Tabela de Resultados O ID de Usuário Protegido Requer o Arquivo qpdiag.log e o Caminho de Acesso de Gravação Iniciação Rápida Atualizando o Centro de Informações do DB2 Instalado em seu Computador ou em um Servidor de Intranet Requisitos de Memória Esclarecimento do Suporte ao Cliente para o DB2 UDB Modificando os Parâmetros do Kernel (Linux) Modificando os Parâmetros do Kernel (Solaris Operating Environment) Manual DB2 Universal Database Express Edition Versão 8.2 Basics Disponível para Download Verificando se Seus Bancos de Dados Estão Prontos para Migração Certificação de Common Criteria para o DB2 UDB Spatial Extender Verificando a Instalação do Spatial Extender Rotinas SQL Administrativas Nome da Coluna Incorreto Documentado no Conjunto de Resultados para a Função de Tabela SNAP_GET_DYN_SQL As Funções de Tabela de Monitoramento de Capturas Instantâneas Possuem Visualizações Específicas à Versão O Procedimento GET_DB_CONFIG Requer um Tamanho Mínimo de Página de 8 K para um Espaço de Tabelas Temporário do Usuário Referência ao SQL Autorizações da Instrução CREATE PROCEDURE (SQL) EXPLAIN_DIAGNOSTIC: Uma Nova Tabela Explain EXPLAIN_DIAGNOSTIC_DATA: Uma Nova Tabela Explain Esquema Utilizado pelo Recurso de Explicação Representações de Cadeias de Valores Datetime Monitor do Sistema Resumo de Indicadores de Funcionamento Lista de Aplicativos Desacoplados sem o Concentrador de Conexões Ativado Monitoramento de Progresso do Processo de Rollback do Tempo de Execução XML Extender Alteração de Parâmetro para Procedimentos Armazenados dxxGenXML, dxxGenXMLClob, dxxRetrieveXML e dxxRetrieveXMLClob Decompondo Documentos XML em Dados do DB2 UDB Decompondo Documentos Maiores que 1 MB Configurando UDFs XML do MQ com o XML Extender Variável de Ambiente DB2DXX_MIN_TMPFILE_SIZE do XML Extender Redefinição de UDT DB2XML.XMLVarchar Apêndice A. Estrutura do Diretório de CD do FixPak do DB2 UDB Apêndice B. Entrando em Contato com a IBM B.1 Informações sobre o Produto Apêndice C. Avisos C.1 Marcas Registradas Notas sobre o Release Conteúdo As notas sobre o release contêm as últimas informações para os seguintes produtos DB2, Versão 8: DB2(R) Universal Database Personal Edition DB2(R) Universal Database(TM) Workgroup Server Edition DB2(R) Universal Database(TM) Workgroup Server Unlimited Edition DB2 Universal Database(TM) Enterprise Server Edition DB2 Personal Developer's Edition DB2 Universal Developer's Edition DB2 Warehouse Manager DB2 Warehouse Manager Sourcing Agent para z/OS(R) DB2 Data Links Manager DB2 Net Search Extender DB2 Spatial Extender DB2 Intelligent Miner(TM) Scoring DB2 Intelligent Miner(TM) Modeling DB2 Intelligent Miner(TM) Visualization DB2 Connect(TM) Application Server Edition DB2 Connect(TM) Enterprise Edition DB2 Connect(TM) Personal Edition DB2 Connect Unlimited Edition DB2 Query Patroller(TM) Os tópicos no DB2 Information Center (http://publib.boulder.ibm.com/infocenter/db2help/) são atualizados regularmente, mas não necessariamente para todos os releases. As notas sobre o release são enviadas com todos os releases, por isso é possível que informações críticas sejam comunicadas nas notas sobre o release. Porém, a informação crítica está contida nas notas sobre o release quando: * Os tópicos no DB2 Information Center não são atualizados para o release correspondente * A informação crítica é descoberta tarde no ciclo de desenvolvimento, após o DB2 Information Center ser atualizado A sua origem primária de informação deve estar no DB2 Information Center. Essas notas sobre o release devem ser revisadas para informações atuais que podem ser aplicadas ao release particular de seu produto DB2. O leia-me do FixPak também deve ser revisado para considerações específicas envolvendo a instalação de seu produto DB2. Detalhes adicionais sobre o DB2 Information Center são fornecidos abaixo do título Recursos Adicionais desta seção. Informações sobre a Versão A documentação mais atualizada está disponível na versão mais recente do Centro de Informações do DB2, acessado por meio de um navegador. A URL para fazer download da documentação mais recente é fornecido na seção Recursos Adicionais abaixo. As marcas de revisão nas Notas sobre o Release do DB2 UDB indicam o texto que foi incluído ou alterado. Uma barra vertical (|) indica as informações que foram incluídas ou alteradas para o release atual. Caminhos do Diretório Os sistemas Windows utilizam barras invertidas (\) para delimitar diretórios em um caminho de diretório. Os sistemas Linux e UNIX utilizam barras (/) como delimitadores. As Notas sobre o Release seguem essa convenção quando as informações são específicas para plataformas. Entretanto, quando as informações forem independentes da plataforma, você talvez precise digitar o caminho do diretório diferente dos mencionados. Por exemplo, se você tiver um sistema Windows, deverá digitar o caminho de diretório utilizando barras invertidas (\) se as Notas sobre o Release mostrarem barras (/). De outra forma, se você tiver um sistema Linux ou UNIX, deverá digitar o caminho de diretório utilizando barras (/) se as Notas sobre o Release mostrarem barras invertidas (\). DB2 Information Integrator Para obter informações sobre questões pendentes conhecidas atualmente com o DB2 Information Integrator e suas tecnologias associadas, incluindo sistemas federados, replicação SQL, replicação Q, publicação de eventos, serviços da Web e gerenciamento de metadados, consulte a publicação DB2 Information Integrator Release Notes. A publicação DB2 Information Integrator Release Notes está disponível na página da Web de suporte do DB2 Information Integrator em: http://www.ibm.com/software/data/integration/db2ii/support.html Recursos Adicionais A versão mais recente da documentação do DB2 é sempre a versão do DB2 Information Center hospedado no endereço http://publib.boulder.ibm.com/infocenter/db2help/ e as alterações de última hora contidas nestas Notas sobre o Release. Você também pode instalar o DB2 Information Center em seu computador ou servidor intranet utilizando o CD de Documentação HTML do DB2 fornecido com seu produto DB2. Depois de instalar o DB2 Information Center, é necessário aplicar o FixPak de documentação mais recente, disponível no site de Suporte do DB2 no endereço http://www.ibm.com/software/data/db2/udb/support/downloadv8_docfix.html. No entanto, os FixPaks de documentação do DB2 não são liberados com freqüência e podem não refletir o nível mais atual da documentação do DB2. Os manuais de produtos DB2 em PDF também são atualizados com pouca freqüência e podem não refletir o nível mais atual disponível. O Web site de Suporte para DB2 UDB contém technotes e atualizações de serviço que descrevem alterações para a documentação e percebem limitações e situações alternativas descobertas após esse documento ser criado. O endereço do Web site de Suporte para DB2 UDB é http://www.ibm.com/software/data/db2/udb/support.html. Informações sobre migração de produtos DB2 estão disponíveis em http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21200005 (portal de migração DB2). Informações adicionais sobre o Development Center do DB2 e o DB2 para z/OS estão disponíveis em http://www.ibm.com/software/data/db2/os390/spb/. O Data Links Manager Administration Guide and Reference foi atualizado na forma PDF (número do manual SC27-1221-01) na época do lançamento do FixPak 1 e está disponível para download no site de suporte do DB2: http://www.ibm.com/software/data/db2/udb/support.html. A documentação para o produto DB2 Life Sciences Data Connect está disponível para download a partir do site do software IBM: http://www.ibm.com/software/data/db2/lifesciencesdataconnect/ Para obter as informações mais recentes sobre os produtos da família DB2, peça uma assinatura gratuita da Revista DB2 . A edição on-line da revista está disponível em http://www.db2mag.com; instruções para solicitar a assinatura também estão detalhadas no site. Sobre Este Release Novidades Deste Release Esta seção não foi atualizada desde a Versão 8.2 FixPak 3 (equivalente à Versão 8.1 FixPak 10). Para obter detalhes de correções, consulte a seção Histórico de Correções de Produtos das Notas sobre o Release. Além disso, o Leia-me do FixPak também pode conter descrições de novos itens neste release. Histórico de Correção dos Produtos Para obter uma lista de APARs (Authorized Program Analysis Reports) endereçadas neste fix pak, visite a página da Web a seguir: http://www.ibm.com/software/data/db2/udb/support/apars.html Problemas de Compatibilidade Marcas de revisão indicam texto que foi incluído ou alterado. Uma barra vertical ( | ) indica informações que foram incluídas ou alteradas para a Versão 8.2 FixPak 4 (equivalente à Versão 8.1 FixPak 11). Compatibilidade Reversa Instalação e Nível do Fixpak de Novos Produtos Talvez você precise instalar um produto DB2(R) que esteja em nível diferente da versão do outro produto DB2(R) que esteja instalado atualmente no computador. Solicita-se que os produtos de DB2 estejam no mesmo nível. Se o produto que você está instalando é de um nível mais recente que a versão dos outros produtos DB2 instalados no mesmo computador, será necessário atualizar seus produtos DB2 existentes para o nível mais recente. Por exemplo, se você estiver instalando o DB2 Connect(TM) para iSeries(TM) em um nível de Fixpak 10 e os seus outros produtos DB2 estiverem no nível de Fixpak 9, será necessário aplicar o Fixpak 10 aos produtos DB2 instalados no momento antes de instalar o DB2 Connect(TM) para iSeries(TM) no nível de Fixpak 10. Opcionalmente, se você estiver instalando um produto em um computador que possua uma versão mais recente de um produto DB2 instalado, há algumas orientações a serem seguidas: Em sistemas operacionais Windows(R) O fixpak pode ser utilizado para instalar o produto diretamente no sistema no mesmo nível. As licenças podem ser incluídas após a instalação ser concluída, utilizando os comandos a seguir: db2licm -a filename em que filename é o nome do arquivo de licença, que pode ser localizado em sua mídia original no diretório db2\license. Você também pode incluir essa licença no diretório db2\license do fixpak e a licença será instalada pela instalação. Em sistemas operacionais UNIX(R) e Linux(R) Pré-requisitos Antes de você instalar um produto ou componente extra, é necessário parar os itens a seguir: * Instâncias do DB2 existentes * O DAS (DB2 Administration Server) As instâncias e o DAS que devem ser parados são aqueles que pertencem à instalação do DB2 em que o produto ou componente do DB2 extra será instalado. Consulte o Leia-me do FixPak para obter instruções adicionais. Procedimento 1. Há três métodos para instalar componente ou produto extra no nível do DB2 abaixo do atual produto ou produtos de DB2 instalados no sistema. Escolha um dos métodos a seguir: Executar o programa db2setup Executar o db2setup interativamente com a GUI ou silenciosamente com um arquivo de resposta. Não desempenhar nenhuma configuração, como criação de instância, durante a instalação do componente ou produto extra com db2setup. Se o DB2 DAS não existir no sistema atual e o componente ou produto extra requerer ou suportar o DB2 DAS, o db2setup configurará o DB2 DAS durante a instalação. Em algumas plataformas, podem ocorrer erros durante a criação do DB2 DAS com db2setup. Esses erros são esperados e podem ser ignorados. O programa db2setup pode ser encontrado no CD ou na imagem do produto DB2 para o componente ou produto extra que você está instalando. Consulte o guia Command Reference e o Suplemento de Instalação e Configuração para obter informações detalhadas sobre a utilização do db2setup. Executar o script db2_install O script db2_install instala qualquer componente que não esteja atualmente instalado em sua instalação do DB2, exceto componentes de mensagem e idioma diferente do inglês. Então, você deve utilizar o db2_install para instalar novos produtos ou componentes, já que ele não atualizará componentes DB2 existentes. O script db2_install pode ser encontrado no CD ou na imagem do produto DB2 para o componente ou produto extra que você está instalando. Consulte o Suplemento de Instalação e Configuração para obter informações detalhadas sobre a utilização do script db2_install. Utilizar o instalador de sistema Utilize o instalador de sistema para instalar novos produtos ou componentes. Consulte Suplemento de Instalação e Configuração para obter informações detalhadas sobre a utilização do instalador de sistema. 2. As seguintes tarefas devem ser desempenhadas após a instalação de um produto ou componente extra: a. Reaplicar o fixpak regular em todos os produtos pré-existentes como aqueles produtos novos e pré-existentes estão no mesmo nível. Para ilustrar esse cenário, assuma as seguintes condições: * O DB2 Universal Database(TM) Enterprise Server Edition está instalado atualmente no nível de FixPak 10. * Em seguida, você instala o DB2 Query Patroller(TM) em FixPak 7 de acordo com as instruções na etapa anterior. Como uma etapa de pós-instalação, você deve aplicar novamente o FixPak 10 regular. Nota: Durante a instalação do fixpak, você deve receber uma mensagem de erro semelhante a esta: O pacote db2cliv81 já está instalado no sistema. A correção da instalação nnnnnnn-nnn finalizou de forma anormal. Para reinstalar essa correção, desinstale-a primeiro antes de tentar reinstalá-la. Esse erro ocorre porque o db2cliv81 no sistema já está no mesmo nível que o nível do fixpak que está sendo instalado. Você pode ignorar esse tipo de erro. Utilize o instalador de sistema para confirmar que o pacote ou componente do DB2 está realmente no mesmo nível do fixpak sendo instalado. b. Executar o comando db2iupdt para atualizar as instâncias DB2 existentes que pertençam à instalação do DB2 atual. c. Executar o comando dasupdt para atualizar o DB2 DAS associado à instalação do DB2 atual. d. Se necessário, execute o comando db2isetup para criar uma nova instância DB2 UDB ou para configurar uma instância existente. Consulte o Leia-me do FixPak para obter detalhes sobre a instalação do fixpak, as atualizações de instâncias e DB2 DAS e outras etapas pós-instalação. Compatibilidade Reversa de Bancos de Dados DB2 UDB Versão 8.2 Se você criar um banco de dados com o DB2 Universal Database Versão 8.2, não será possível utilizar esse banco de dados em um nível da Versão 8.1. Esse banco de dados somente poderá ser utilizado em um nível da Versão 8.2 ou posterior. Os bancos de dados criados no nível DB2 UDB Versão 8.2 podem ter funcionalidade adicional que não estava disponível em versões anteriores. Essa diferença pode resultar em um comportamento inesperado e indesejável se você tentar mover seu novo banco de dados para um release anterior do DB2 UDB. Nota: A única maneira de mover um banco de dados da Versão 8.2 de volta para a Versão 8.1 é se o banco de dados tiver sido originalmente criado na Versão 8.1. Mesmo assim, a migração reversa é possível apenas depois de executar a ferramenta db2demigdb. Porém, você poderá ter problemas se tiver utilizado funções embutidas que foram alteradas na Versão 8.2. Esclarecimento do Suporte ao Cliente para o DB2 UDB A seção "Visão Geral do Cliente DB2" do manual Iniciação Rápida para Clientes do DB2 afirma o seguinte: Os clientes DB2 podem se conectar a servidores DB2 dois releases posteriores ou um release anterior no nível de release do cliente e também a servidores no mesmo nível de release. Uma emenda para essa instrução é a seguinte: Embora as conexões de clientes da Versão N com servidores da Versão N + 2 sejam possíveis em alguns ambientes, a equipe de suporte do DB2 fornecerá suporte para esta configuração apenas se a Versão N ainda estiver funcionando. Quando a Versão N é retirada de funcionamento, esta configuração não é mais suportada pela equipe de suporte do DB2. Os clientes do DB2 Versão 7 que se conectam a um servidor DB2 Versão 8 não são mais suportados pela equipe de suporte do DB2, porque a Versão 7 foi retirada de funcionamento. Alterações de Registro de Funcionamento ao Migrar do DB2 UDB Versão 8.2 de Volta para o DB2 UDB Versão 8.1 Todas as alterações de registro feitas no nível DB2 UDB Versão 8.2 são perdidas quando você migra de volta para o DB2 UDB Versão 8.1. O registro é revertido para o arquivo HealthRules.reg da versão 8.1 que contém as configurações que existiam antes de você fazer upgrade para o DB2 UDB Versão 8.2 e começar a utilizar as configurações no arquivo HealthRules2.reg. FixPaks Alternativos (Linux e UNIX) Antes do DB2 UDB (Universal Database) Versão 8, os FixPaks funcionavam apenas como atualizações para pacotes ou conjuntos de arquivos do DB2 UDB instalados em um local fixo. Isso significa que a instalação de FixPaks substituiu os arquivos existentes pelos atualizados, fornecidos nos FixPaks. Vários níveis do DB2 FixPak não podem existir em um único sistema. O DB2 UDB ESE (Enterprise Server Edition) pode existir em vários níveis de fix pack no mesmo sistema para sistemas operacionais baseados em Linux(TM) e UNIX(R). Este recurso, suportado em ambientes operacionais de produção desde a Versão 8.1.2, é obtido utilizando os dois tipos de FixPak a seguir: FixPaks Comuns * Estão disponíveis não apenas para o ESE, mas para todos os produtos DB2 Versão 8 suportados para as plataformas relacionadas * Podem ser instalados diretamente sobre a instalação existente no diretório /usr/opt/db2_08_01 no AIX ou no diretório /opt/IBM/db2/V8.1 em outras plataformas * Não pode ser aplicado na parte superior de quaisquer FixPaks alternativos instalados FixPaks Alternativos * Podem ser instalados como cópias completamente novas do DB2 UDB ESE * São instalados em um local predefinido diferente do local utilizado para uma instalação regular do DB2 UDB * Não há procedimento de instalação da GUI para FixPaks alternativos Notas: 1. Não será solicitada a execução da instalação de vários FixPaks se ela não for necessária ao seu ambiente. Você deve considerar a instalação de FixPaks múltiplos se precisar de instâncias ESE do DB2 UDB Versão 8 em diferentes níveis de fixpak no mesmo sistema. Por exemplo, os FixPaks múltiplos permitem que você verifique as alterações contidas no FixPak em seu ambiente de teste sem que afete o sistema de produção. 2. A partir do IBM DB2 UDB ESE (Enterprise Server Edition) para Linux e UNIX, Versão 8.1.2, os fix packs são suportados em ambientes operacionais de produção quando são instalados como Vários fix packs. 3. No Linux, os FixPaks alternativos estão disponíveis apenas nas seguintes plataformas: * x86 (32 bits) * S/390 (31 bits) 4. Duas ou mais instâncias do DB2 em execução em níveis de fixpak diferentes no mesmo sistema não suportam operações que façam DB2 IPCs (Internal Procedure Calls), como Consultas Federadas. Todas as instâncias envolvidas em tais operações no mesmo sistema devem estar no mesmo nível de fixpak do DB2. 5. Os FixPaks alternativos do DB2 UDB Versão 8 suportam apenas o DB2 ESE nas plataformas Linux and Unix suportadas. Para atualizar uma instância de vários FixPaks em um nível diferente de FixPak, execute uma das seguintes opções: * Instale o FixPak comum adequado na instalação GA (General Availability) e atualize a instância executando db2iupdt a partir do caminho de GA existente. * Instale o FixPak alternativo adequado em seu próprio caminho exclusivo e atualize a instância executando db2iupdt a partir deste caminho. Para obter informações adicionais relativas a FixPaks alternativos: * Consulte o Leia-me do FixPak mais recente * Visite o site de suporte da IBM em http://www.ibm.com/software/data/db2/udb/support.html Compatibilidade de Dados de Consulta do Query Patroller Versão 8.2.2 com FixPaks Anteriores Iniciando com a Versão 8.2.2, (equivalente à Versão 8.1 FixPak 9), o conteúdo da tabela de controle do Query Patroller TRACK_QUERY_INFO que foi capturado em um ambiente de 32 bits pode ser utilizado em um ambiente de 64 bits. Esse recurso facilita o esforço de migração para um ambiente de 64 bits. As informações capturadas na tabela de controle do Query Patroller TRACK_QUERY_INFO na Versão 8.2.2 não podem ser utilizadas para gerar dados históricos para essa consulta ou para executar consultas mantidas no nível de FixPak anterior. Restrições a Suporte a Servidores de Nível Anterior do Data Warehouse Center As limitações a seguir existem para suporte ao servidor anterior para o DB2 UDB (Universal Database) Enterprise Server Edition Versão 8 Data Warehouse Center: Suporte a LOB (Large Object) * Se você estiver utilizando um banco de dados de controle do warehouse em um servidor anterior ao DB2 UDB Enterprise Server Edition Versão 8, não será possível trabalhar com LOBs. É necessário fazer upgrade do banco de dados de controle do warehouse para o nível correto ou mover o banco de dados de controle para o sistema no qual o servidor de warehouse do DB2 UDB Enterprise Server Edition Versão 8 está instalado e utilizar o banco de dados de controle do warehouse localmente a partir desse sistema. * Para mover os LOBs entre o Data Warehouse Center e o DB2 UDB, é necessário fazer upgrade para o DB2 UDB Enterprise Server Edition, Versão 8. Suporte a SNA (Systems Network Architecture) Se você utilizar o SNA para se conectar a origens e destinos do warehouse, será necessário alterar a configuração para TCP/IP sobre SNA ou utilizar o agente de warehouse do Windows NT. Suporte para Utilitários EXPORT e LOAD O utilitário LOAD do Data Warehouse Center da Versão 8 não suporta um banco de dados de destino da Versão 7. Se desejar manter seu destino como um banco de dados da Versão 7, será necessário alterar a etapa LOAD para uma etapa SQL Select e Insert. As etapas SQL Select e Insert utilizam um comando DELETE* seguido dos comandos SELECT e INSERT. As etapas SQL Select e Insert requerem que o banco de dados registre todas as transações. Como resultado, o desempenho das etapas SQL Select e Insert não é tão eficiente quanto para os utilitários EXPORT e LOAD. APARs do Development Center Requeridos para Suporte a SQLJ e SQL Assist no DB2 UDB para OS/390, Versão 6 e DB2 UDB para z/OS, Versão 7 Ao utilizar o Development Center em um cliente do Application Development para o DB2 UDB (Universal Database) Versão 8 em sistemas operacionais Windows ou UNIX, os seguintes APARs precisarão ser instalados no servidor para ativar o suporte a SQLJ e SQL Assist: DB2 UDB para z/OS, Versão 7 * PQ65125 - Fornece suporte a SQLJ para a construção de procedimentos armazenados SQLJ Java * PQ76858 - Fornece suporte para SQL Assist DB2 UDB para OS/390, Versão 6 * PQ76858 - Fornece suporte para SQL Assist Duas Versões do SQL Assist São Ativadas a partir do DB2 UDB É possível chamar a Versão 7 e a Versão 8 do SQL Assist a partir do DB2 Universal Database, Versão 8. É possível iniciar a Versão 7 a partir do Data Warehouse Center do DB2. Todos os outros centros iniciam a Versão 8 mais recente. A ajuda on-line do produto possui informações adicionais para o SQL Assist, Versão 7. Alteração no Comportamento do Servidor Unicode Na Versão 7, os servidores Unicode ignoravam todas as páginas de códigos de gráficos enviadas pelos aplicativos no momento da conexão e assumiam que o UCS2 Unicode (página de códigos 1200) estava sendo utilizado. Agora, os servidores Unicode Versão 8 respeitam a página de códigos enviada pelo cliente. Parâmetro de Configuração do Banco de Dados É Alterado durante a Migração O DB2 UDB Versão 8.2 utiliza um novo arquivo de parâmetro de configuração de banco de dados de 16K denominado SQLDBCONF. Este é um arquivo separado do arquivo de parâmetro de configuração de banco de dados de 4K do DB2 UDB Versão 8.1 denominado SQLDBCON. Depois de migrar para o DB2 UDB Versão 8.2, o produto migra o conteúdo do arquivo de 4K da Versão 8.1 e utiliza o arquivo de 16K para registrar as alterações do parâmetro de configuração de banco de dados. O arquivo de 4K da Versão 8.1 é retido, mas não é utilizado. Se você migrar de volta para o DB2 UDB Versão 8.1, o produto DB2 UDB Versão 8.1 volta a utilizar o arquivo de 4K da Versão 8.1 original para registrar alterações do parâmetro de configuração de banco de dados. O arquivo de 16K da Versão 8.2 é retido, mas não é reconhecido pelo produto DB2 UDB Versão 8.1. As alterações feitas no arquivo do parâmetro de configuração de banco de dados de 16K entre migrar para a Versão 8.2 e migrar de volta para a Versão 8.1 são, na verdade, ocultas do nível do DB2 UDB anterior porque as alterações não são migradas para o arquivo de 4K original. Além disso, se você migrar para o DB2 UDB Versão 8.2 novamente, o produto DB2 UDB Versão 8.2 reconhece que o arquivo de configuração de banco de dados de 16K já existe e volta a utilizar o arquivo de 16K da Versão 8.2 para registrar as alterações do parâmetro de configuração de banco de dados. O arquivo de 4K da Versão 8.1 é retido, mas não é reconhecido pelo produto DB2 UDB Versão 8.2. As alterações feitas no arquivo do parâmetro de configuração de banco de dados de 4K entre migrar de volta para a Versão 8.1 e migrar novamente para a Versão 8.2 são, na verdade, ocultas do nível do DB2 UDB mais recente porque as alterações não são migradas para o arquivo de 16K existente. Aperfeiçoamentos das Mensagens de Formato do db2diag.log O formato do arquivo db2diag.log foi aprimorado de várias maneiras para a Versão 8.2. O arquivo de registro agora ficou mais fácil de ser lido e mais fácil de ser analisado no software. Os aperfeiçoamentos incluem: * Cada entrada possui um conjunto completo de informações de cabeçalho * As partes de mensagens e de dados do registro de log são claramente marcadas, tornando o registro de log mais fácil de utilizar e de entender * Foram incluídos timestamps com fuso horário para cada registro * Cada campo possui um nome de campo claro em maiúsculas * Os comprimentos de linhas de campos de cabeçalho e de mensagens estão restritos a 80 caracteres * Foram incluídos novos campos, mais notavelmente um campo de nível de severidade, para ajudar a localizar as entradas mais importantes Também foram feitas outras alterações, tais como: a alteração do nome de campo do banco de dados para DB. Foram incluídos registros de eventos como mensagens de diagnósticos no arquivo db2diag.log. Exemplos de tais eventos são: * Atualizações no registro do perfil * Atualizações nos parâmetros de configuração Os registros de eventos possuem "Evento" especificado no campo LEVEL. Embora os eventos não sejam erros, eles podem ser registrados nos níveis de diagnósticos diferentes de 4 (Informativo) ou 3 (Aviso), dependendo de sua importância. As Variáveis de Registro de Perfil db2set e os Parâmetros de Configuração do DB ou DBM Agora São Armazenados em Log Iniciando com a Versão 8.2, as atualizações a seguir são registradas no arquivo db2diag.log: * atualizações de registro de perfil do db2set * banco de dados e atualizações do parâmetro de configuração do gerenciador de banco de dados As mensagens para essas atualizações são registradas nos níveis de diagnóstico alto devido à sua importância. Estão registrados os seguintes tipos de atualizações de registro de perfil db2set: Modificação O comando db2set variableName=value gera uma entrada db2diag.log como a seguinte: 2004-04-22-19.19.14.156959-240 I79582C286 LEVEL: Event PID : 2437242 TID : 1 PROC : db2set INSTANCE: db2user NODE : 000 FUNCTION: DB2 UDB, oper system services, db2set_main, probe:40 CHANGE : CFG DB2SET: DB2DBDFT: From: "OLDDB" To: "SAMPLE" Exclusão O comando db2set -r gera uma entrada db2diag.log como a seguinte: CHANGE : CFG DB2SET: DB2DBDFT: From: "SAMPLE" To: "" Nota: As informações de cabeçalho foram omitidas no exemplo anterior. Reconfiguração O comando db2set variableName=value gera uma entrada db2diag.log como a seguinte: CHANGE : CFG DB2SET: Profile registry was reset Nota: As informações de cabeçalho foram omitidas no exemplo anterior. Exemplos de atualizações de parâmetros de configuração do DD e DBM são CHANGE : CFG DB SAMPLE: "Maxlocks" From: "10" To: "20" CHANGE : CFG DBM: "Diaglevel" From: "3" To: "1" CHANGE : CFG DBM: Reset to the system defaults Nota: As informações de cabeçalho foram omitidas nos exemplos anteriores. Para localizar estas mensagens de atualização de configuração, utilize a ferramenta db2diag. Exemplo: * Para selecionar todos os eventos: db2diag -level event * Para selecionar eventos de alteração: db2diag -g "changeevent=" Compatibilidade do Produto JDK 1.4.2 Suportado pelo DB2 Universal Database para Linux, UNIX e Windows O DB2 UDB (Universal Database(TM)) para Linux, UNIX, e Windows(R), Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) suporta o JDK 1.4.2 em todos os ambientes de sistema operacional de estação de trabalho de 32 bits e de 64 bits suportados pelo DB2 UDB. Esse suporte inclui, mas não está limitado ao suporte para construção e execução de aplicativos clientes Java(TM), construção e execução de rotinas Java(TM) a partir da linha de comandos, construção e execução das rotinas Java(TM) a partir do DB2 Development Center, em que é suportado, assim como para a execução de outras ferramentas do DB2. Ao instalar o DB2 UDB, Versão 8.2, a última versão suportada do Java Developer Kit também será instalada, se ainda não estiver instalada, a menos que a instalação do DB2 UDB seja uma atualização de uma instalação anterior do DB2 UDB, Versão 8. Se estiver atualizando uma instalação anterior do DB2 UDB, Versão 8, será necessário instalar o Java Developer Kit a partir do CD. A tabela a seguir indica os ambientes do sistema operacional da estação de trabalho de 32 bits e 64 bits suportados pelo DB2 e o último nível do JDK suportado para cada um deles. Para obter informações sobre o suporte a JDK mais recente, consulte a página da Web do Java Application Development no http://www.ibm.com/software/data/db2/udb/ad/v8/java/. Tabela 1. Ambientes Suportados pelo DB2 com os Níveis Correspondentes do JDK Suportados +----------------------------------+----------------------------------+ | Ambiente Suportado do DB2 | Último Nível do JDK Suportado | +----------------------------------+----------------------------------+ | Windows IA/AMD de 32 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Windows IA de 64 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Windows AMD/EM64T de 64 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | AIX(R) 4.3.3 de 32 bits | JDK 1.3.1 SR6 [2] | +----------------------------------+----------------------------------+ | AIX(R) 5 (hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Solaris (hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | HPUX RISC & Itanium (hybrid [1]) | JDK 1.4.2.01 | +----------------------------------+----------------------------------+ | Linux AMD/EM64T de 32 bits e 64 | JDK 1.4.2 [3] | | bits (hybrid [1]) | | +----------------------------------+----------------------------------+ | Linux IA de 32 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux IA de 64 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux 390 de 31 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux 390 de 64 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux PPC (hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ Notas: 1. Hybrid refere-se a uma imagem de instalação que contém suporte a 32 bits e 64 bits 2. JDK 1.3.1 Service Release 6 é a única versão de JDK suportada para AIX(R) 4.3.3. 3. Não há suporte às ferramentas de interface gráfica com o usuário do DB2 no Linux AMD/EM64T (32 e 64 bits) com JDK 1.4.2. Um procedimento de atualização para a configuração do Ambiente Linux Java é fornecido a seguir. Configurando o Ambiente Linux Java Pré-requisitos * Antes de implementar as instruções a seguir, desempenhe a configuração esboçada no tópico "Setting up the UNIX(R) Java environment", que pode ser localizado no Application Development Guide: Building and Running Applications Guide. * Os comandos nas seguintes instruções requerem autoridade root. Procedimento Para construir os aplicativos Java no Linux com suporte a DB2 JDBC: 1. Instale e configure um dos developer kits suportados, listados no tópico "Software de Desenvolvimento Suportado pelo Linux", localizado no Application Development Guide: Building and Running Applications. Para executar procedimentos armazenados Java ou funções definidas pelo usuário, o Linux Runtime Linker deve ser capaz de acessar certas bibliotecas compartilhadas Java e o DB2 UDB deve ser capaz de carregar tais bibliotecas, bem como a Java Virtual Machine. O processo que executa procedimentos armazenados e funções definidas pelo usuário carrega bibliotecas apenas em locais seguros, como definido no arquivo /etc/ld.so.conf. Um desses locais seguros é /usr/lib. As instruções restantes mostram qual biblioteca requer links simbólicos em /usr/lib. 2. Crie links simbólicos em /usr/lib para apontar para bibliotecas compartilhadas Java. Dependendo da versão do JDK em utilização, haverá links a diferentes bibliotecas compartilhadas: Para o IBM(R) Developer Kit 1.3 Crie links simbólicos para libjava.so, libjvm.so e libhpi.so. Você pode criar os links simbólicos executando os seguintes comandos como root: cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so . ln -fs JAVAHOME/jre/bin/classic/libjvm.so . ln -fs JAVAHOME/jre/bin/libhpi.so . em que JAVAHOME é o diretório base para o IBM(R) Developer Kit. Se não for possível ao DB2 UDB localizar essas bibliotecas, você receberá um erro -4301 ao tentar executar uma rotina Java e haverá mensagens no registro de notificação de administração sobre as bibliotecas não localizadas. Para o IBM(R) Developer Kit 1.4.1 Crie links simbólicos para libjava.so, libjvm.so, libhpi.so e libjsig.so. Você pode criar os links simbólicos executando os seguintes comandos como root: cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so ln -fs JAVAHOME/jre/bin/classic/libjvm.so ln -fs JAVAHOME/jre/bin/libhpi.so ln -fs JAVAHOME/jre/bin/libjsig.so em que JAVAHOME é o diretório base para o IBM Developer Kit. Se não for possível ao DB2 UDB localizar essas bibliotecas, você receberá um erro -4301 ao tentar executar uma rotina Java e haverá mensagens no registro de notificação de administração sobre as bibliotecas não localizadas. Para o IBM Developer Kit 1.4.2 em plataformas Linux diferentes de AMD64/EM64T Crie links simbólicos para libjava.so, libjvm.so, libhpi.so, libjsig.so, libjitc.so, libxhpi.so e libdbgmalloc.so . Você pode criar os links simbólicos executando os seguintes comandos como root: cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so ln -fs JAVAHOME/jre/bin/classic/libjvm.so ln -fs JAVAHOME/jre/bin/libhpi.so ln -fs JAVAHOME/jre/bin/libjsig.so ln -fs JAVAHOME/jre/bin/libjitc.so ln -fs JAVAHOME/jre/bin/libxhpi.so ln -fs JAVAHOME/jre/bin/libdbgmalloc.so em que JAVAHOME é o diretório base para o IBM Developer Kit. Se não for possível ao DB2 UDB localizar essas bibliotecas, você receberá um erro -4301 ao tentar executar uma rotina Java e haverá mensagens no registro de notificação de administração sobre as bibliotecas não localizadas. Para o IBM Developer Kit 1.4.2 em Linux AMD64/EM64T Esse developer kit é diferente do kit em outras plataformas Linux. Siga as instruções esboçadas na seção Procedimento Alternativo que se segue e coloque a seguinte linha /etc/ld.so.conf: JAVAHOME/jre/bin em que JAVAHOME é o diretório base para o IBM Developer Kit. Se não for possível ao DB2 UDB localizar essa bibliotecas, você receberá um erro -4301 ou -1042 ao tentar executar uma rotina Java. Procedimento Alternativo Ao invés de criar explicitamente links para as bibliotecas compartilhadas no diretório /usr/lib é possível incluir os nomes dos diretórios que armazenam as bibliotecas compartilhadas Java ao arquivo /etc/ld.so.conf. Esse arquivo requer permissão de raiz. Após atualizar /etc/ld.so.conf, você deve executar o comando ldconfig como raiz para ativar suas alterações. Se encontrar qualquer problema com esse procedimento alternativo, crie os links no diretório /usr/lib, como instruído anteriormente. Correção do Microsoft XP Necessária para Sistemas Operacionais de 64 Bits Se você estiver utilizando o sistema operacional Microsoft XP de 64 bits (2600), configurado para utilizar o protocolo NETBIOS com a família de produtos do DB2, será necessário obter um hotfix da Microsoft. Entre em contato com a Microsoft indicando o artigo do Knowledge Base número Q317437. Sistemas Operacionais Windows XP O sistema operacional Windows XP Home Edition é suportado apenas pelos produtos do DB2 UDB (Universal Database) Personal Edition. O sistema operacional Windows XP Professional é suportado pelos seguintes produtos do DB2: * DB2 UDB Express Edition * DB2 UDB Personal Edition * DB2 UDB Workgroup Server Edition * DB2 Connect Personal Edition Os produtos do DB2 a seguir são suportados no Windows XP para fins de desenvolvimento ou teste apenas (os ambientes de produção requerem Windows 2000 ou Windows Server 2003): * DB2 UDB Enterprise Server Edition * DB2 Connect Enterprise Edition Opcional DB2 UDB HADR Disponível para Aquisição à Parte No DB2 UDB (Universal Database(TM)) Versão 8.2, os clientes do DB2 UDB Workgroup Server Edition e do DB2 UDB Express Edition (quando licenciado com base no modelo de preço por usuário) não conseguiram instalar o opcional disponível para aquisição à parte do DB2 UDB HADR (High Availability Disaster Recovery). Esse problema foi corrigido no DB2 UDB Versão 8.2 FixPak 1 (equivalente à Versão 8.1 FixPak 8). DB2 Warehouse Manager (Versão 8.2) e IBM DB2 OLAP Server FP3 e Posterior Os utilitários OLAP no DB2 Warehouse Manager Standard Edition, Versão 8.2 não são compatíveis com o IBM DB2 OLAP Server FP3 (Essbase API nível 6.5.4) e posterior. Você é aconselhado a utilizar o DB2 OLAP Server FP2 (Essbase 6.5.3) ou anterior até que esse problema seja resolvido. Ativação do Registro de E/S Bruto (Linux com Kernel 2.6) Para utilizar registros com dispositivos de E/S brutos antes do DB2 UDB (Universal Database) Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9), era necessário ligar um dispositivo físico ao driver de dispositivo de caracteres bruto do Linux com o utilitário bruto. Iniciando com o DB2 UDB Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9), no kernel Linux 2.6, a E/S bruta para registros pode ser especificada diretamente. Por exemplo, para utilizar a partição de dispositivo /dev/sdb1 para registros brutos para o banco de dados SAMPLE, emita o seguinte comando: db2 update db cfg for sample using newlogpath /dev/sdb1 Embora o DB2 UDB ainda suporte o método de utilização do utilitário bruto para E/S brutas, as distribuições recentes rejeitam esse recurso que poderá ser removido futuramente. O método preferido é a utilização do novo método, especificando os dispositivos diretamente. Suporte Red Hat Linux com o Data Warehouse Center O DB2 Universal Database, Versão 8.2 suporta o Red Hat Enterprise Linux AS Versões 3 e 2.1. Porém, o Data Warehouse Center suporta apenas o Red Hat Enterprise Linux AS, Versão 2.1. O Data Warehouse Center utiliza drivers DataDirect ODBC que não suportam o Red Hat Enterprise Linux AS, Versão 3.1. Portanto, o Data Warehouse Center não suporta origens e destinos do warehouse ODBC de um site de agente do Red Hat Enterprise Linux AS, Versão 3.1. Centralizador de Conexão Requerido com WebSphere MQ Transaction Manager e DB2 para OS/390 Ao executar aplicativos em um ambiente IBM(R) WebSphere(R) MQ (anteriormente conhecido como IBM MQSeries(R)), WebSphere(R) MQ pode atuar como um gerenciador de transição em conformidade com XA, coordenando todas as transações de confirmação de duas fases e distribuídas. Quando o WebSphere(R) MQ está agindo como um gerenciador de transações neste modo e as origens de dados são da família de produtos do DB2, há vários requisitos de configuração. A maioria desses requisitos já estão documentados. Por exemplo, você deve configurar o parâmetro de configuração TP_MON_NAME como "MQ" no Runtime Client do DB2 . Porém, há um requisito de configuração que não está documentado. O requisito é especificado para o DB2 Connect ao conectar às origens de dados que são servidores do DB2 para OS/390(R): Ao utilizar WebSphere MQ para transações distribuídas coordenadas envolvendo servidores do DB2 para z/OS(R) e DB2 para iSeries, o recurso do centralizador de conexão do DB2 Connect deve estar ativado no gateway. O centralizador de conexão é ativado quando o valor do parâmetro de configuração MAX_CONNECTIONS é maior que o valor de MAX_COORDAGENTS. Se você não ativar o centralizador de conexão, isso resultará em comportamentos de transações inesperadas. Tabelas de Conversão Alternativa do Unicode para CCSID (Coded Character Set Identifier) 5039 A página de códigos Shift-JIS do MicrosoftWindows para o idioma japonês é registrada como o CCSID (Coded Character Set Identifier) IBM 943. Entretanto, a página de códigos Shift-JIS na plataforma HP-UX está registrada como CCSID 5039. O CCSID 5039 contém caracteres somente no JIS (Japanese Industry Standard), e não possui nenhum caractere definido pelo fornecedor. Você pode utilizar um banco de dados do DB2 UDB (Universal Database) do CCSID 5039 no HP-UX para armazenar caracteres Shift-JIS, mas haverá conversão da página de códigos entre o CCSID 5039 e o CCSID 943. Ao utilizar aplicativos Microsoft ODBC, você poderá encontrar um problema ao converter dados em CCSID 5039 para Unicode, devido a diferenças entre a tabela de conversão da página de códigos da IBM e a tabela de conversão da página de códigos da Microsoft. A lista de caracteres a seguir, quando convertida de CCSID 5039 para Unicode, resultará em pontos de código diferentes dependendo de qual tabela de conversão for utilizada (IBM ou Microsoft). Para esses caracteres, a tabela de conversão da IBM está de acordo com o Japanese Industry Standard JISX0208 e JISX0221. Tabela 2. Código do Ponto de Conversão de CCSID 5039 para Unicode +-----------------------+----------------------+----------------------+ | Ponto de Código do | Ponto de Código | Ponto de Código | | Shift-JIS (Nome do | Primário da IBM | Primário da | | Caractere) | (Nome do Unicode) | Microsoft (Nome do | | | | Unicode) | +-----------------------+----------------------+----------------------+ | X'815C' (EM dash) | U+2014 (EM dash) | U+2015 (Horizontal | | | | bar) | +-----------------------+----------------------+----------------------+ | X'8160' (Wave dash) | U+301C (Wave dash) | U+FF5E (Fullwidth | | | | tilde) | +-----------------------+----------------------+----------------------+ | X'8161' (Double | U+2016 (Double | U+2225 (Parallel to) | | vertical line) | vertical line) | | +-----------------------+----------------------+----------------------+ | X'817C' (Minus sign) | U+2212 (Minus sign) | U+FF0D (Fullwidth | | | | hyphen-minus) | +-----------------------+----------------------+----------------------+ Por exemplo, o caractere EM dash com o ponto de código CCSID 5039 de X'815C' é convertido para o ponto de código do Unicode U+2014 ao utilizar a tabela de conversão da IBM, mas é convertido para U+2015 ao utilizar a tabela de conversão da Microsoft. Isso pode criar problemas potenciais para aplicativos Microsoft ODBC porque eles tratariam o U+2014 como um ponto de código inválido. Para evitar esses problemas potenciais, o DB2 UDB fornece a tabela de conversão alternativa da Microsoft de CCSID 5039 para Unicode, além da tabela de conversão padrão da IBM. É necessário substituir a tabela de conversão padrão da IBM pela tabela de conversão alternativa da Microsoft. Observe que a tabela de conversão padrão da IBM de Unicode para CCSID 5039 corresponde à versão da Microsoft. Substituindo as Tabelas de Conversão do Unicode para CCSID (Coded Character Set Identifier) 5039 pelas Tabelas de Conversão da Microsoft Ao converter de CCSID 5039 para Unicode, será utilizada a tabela de conversão da página de códigos padrão do DB2 UDB (Universal Database). Se desejar utilizar uma versão diferente da tabela de conversão, como a versão da Microsoft, você deverá substituir manualmente o arquivo da tabela de conversão padrão (.cnv). Pré-requisitos Antes de substituir os arquivos da tabela de conversão da página de códigos existentes no diretório sqllib/conv, você deve, primeiro, fazer um backup do arquivo, caso deseje alterá-lo de volta. No UNIX e no Linux, o diretório sqllib/conv é vinculado ao caminho de instalação do DB2 UDB. Restrições Para que a substituição da tabela de conversão seja efetiva, cada cliente do DB2 UDB que se conectar ao mesmo banco de dados deve ter sua tabela de conversão alterada. De outro modo, clientes diferentes podem armazenar o mesmo caracter utilizando pontos de código diferentes. Procedimento Para substituir a tabela de conversão padrão do DB2 UDB para converter de CCSID 5039 para Unicode, siga essas etapas: 1. Copie sqllib/conv/ms/5039ucs2.cnv para sqllib/conv/5039ucs2.cnv 2. Reinicie o DB2 UDB. Tabelas de Conversão Alternativa do Unicode para CCSID (Coded Character Set Identifier) 954 O CCSID (Coded Character Set Identifier) da IBM para a página de códigos Japanese EUC é registrado como CCSID 954. O CCSID 954 é uma codificação comum para as plataformas Japanese UNIX e Linux. Ao utilizar aplicativos Microsoft ODBC para se conectar a um banco de dados DB2 UDB (Universal Database) do CCSID 954, você pode encontrar um problema ao converter dados do CCSID 954 para Unicode. As diferenças entre a tabela de conversão da página de códigos da IBM e da Microsoft geram tais problemas. A tabela de conversão da IBM está de acordo com os nomes de caracteres conforme especificado no JIS (Japanese Industry Standard) JISX0208, JISX0212 e JISX0221. Os caracteres a seguir, quando convertidos de CCSID 954 para Unicode, resultarão em pontos de códigos diferentes dependendo da tabela de conversão que for utilizada (IBM ou Microsoft). Tabela 3. Conversão do Ponto de Código do CCSID 954 para Unicode +-----------------------+----------------------+----------------------+ | Ponto de Código do | Ponto de Código | Ponto de Código | | EUC-JP (Nome do | Primário da IBM | Primário da | | Caractere) | (Nome do Unicode) | Microsoft (Nome do | | | | Unicode) | +-----------------------+----------------------+----------------------+ | X'A1BD' (EM dash) | U+2014 (EM Dash) | U+2015 (Horizontal | | | | Bar) | +-----------------------+----------------------+----------------------+ | X'A1C1' (Wave dash) | U+301C (Wave Dash) | U+FF5E (Fullwidth | | | | Tilde) | +-----------------------+----------------------+----------------------+ | X'A1C2' (Double | U+2016 (Double | U+2225 (Parallel To) | | vertical line) | vertical line) | | +-----------------------+----------------------+----------------------+ | X'A1DD' (Minus sign) | U+2212 (Minus sign) | U+FF0D (Fullwidth | | | | hyphen-minus) | +-----------------------+----------------------+----------------------+ | X'8FA2C3' (Broken | U+00A6 (Broken bar) | U+FFE4 (Fullwidth | | bar) | | broken bar) | +-----------------------+----------------------+----------------------+ Por exemplo, o caractere EM dash com o ponto de código CCSID 954 de X'A1BD' é convertido para o ponto de código do Unicode U+2014 ao utilizar a tabela de conversão da IBM, mas é convertido para U+2015 ao utilizar a tabela de conversão da Microsoft. Devido a essa diferença de mapeamento de conversão, você pode ter dois pontos de códigos diferentes para o mesmo caractere em um banco de dados Unicode do DB2 UDB ou em uma coluna de gráfico de um banco de dados do DB2 UDB 954. Isso pode criar problemas potenciais para aplicativos Microsoft ODBC porque eles tratariam o U+2014 como um ponto de código inválido. Para evitar esses problemas potenciais, o DB2 UDB fornece a tabela de conversão alternativa da Microsoft de CCSID 954 para Unicode, além da tabela de conversão padrão da IBM. É necessário substituir a tabela de conversão padrão da IBM pela tabela de conversão alternativa da Microsoft. Observe que a tabela de conversão padrão da IBM de Unicode para CCSID 954 corresponde à versão da Microsoft. Substituindo as Tabelas de Conversão do Unicode para o CCSID (Coded Character Set Identifier) 954 pelas Tabelas de Conversão da Microsoft Ao converter de CCSID 954 para Unicode, será utilizada a tabela de conversão da página de códigos padrão do DB2 UDB (Universal Database). Se desejar utilizar uma versão diferente da tabela de conversão, como a versão da Microsoft, você deverá substituir manualmente o arquivo da tabela de conversão padrão (.cnv). Pré-requisitos Antes de substituir os arquivos da tabela de conversão da página de códigos existentes no diretório sqllib/conv, você deve, primeiro, fazer um backup do arquivo, caso deseje alterá-lo de volta. No UNIX e Linux, o diretório sqllib/conv está vinculado ao caminho da instalação de DB2 UDB. Restrições Para ser efetivo, todo cliente do DB2 UDB que se conectar ao mesmo banco de dados CCSID 954 deve ter sua tabela de conversão alterada. Se seu cliente for um Windows em japonês, cuja página de códigos ANSI é Shift-JIS (CCSID 943), será necessário também alterar as tabelas de conversão padrão do DB2 entre o CCSID 943 e o Unicode para a versão da Microsoft. De outro modo, clientes diferentes podem armazenar o mesmo caracter utilizando pontos de código diferentes. Procedimento Para substituir a tabela de conversão padrão do DB2 UDB para converter de CCSID 954 para Unicode, siga essas etapas: 1. Copie sqllib/conv/ms/0954ucs2.cnv para sqllib/conv/0954ucs2.cnv 2. Reinicie o DB2 UDB. Para substituir as tabelas de conversão padrão do DB2 UDB para converter entre o CCSID 943 e o Unicode, siga essas etapas: 1. Copie sqllib/conv/ms/0943ucs2.cnv para sqllib/conv/0943ucs2.cnv 2. Copie sqllib/conv/ms/ucs20943.cnv para sqllib/conv/ucs20943.cnv 3. Reinicie o DB2 UDB. Tabelas de Conversão Unicode Alternativas para o CCSID (Coded Character Set Identifier) 943 Ao utilizar a página de códigos Shift-JIS do Microsoft Japanese Windows que é registrada como o CCSID (Coded Character Set Identifier) da IBM 943, você pode encontrar os dois problemas a seguir ao converter caracteres entre o CCSID 943 e o Unicode. O problema em potencial ocorre devido a diferenças entre as tabelas de conversão da página de códigos da IBM e da Microsoft. Para evitar esses problemas em potencial, o DB2 UDB (Universal Database) fornece as tabelas de conversão alternativas da Microsoft entre o CCSID 943 e o Unicode, além das tabelas de conversão padrão da IBM. Problema 1 Por motivos de histórico, mais de 300 caracteres na página de códigos CCSID 943 são representados por dois ou três pontos de código cada. A utilização de IMEs (Input Method Editors) e de tabelas de conversão de páginas de códigos faz com que apenas um destes pontos de código equivalentes seja digitado. Por exemplo, a letra minúscula para o numeral romano um 'i' possui dois pontos de código equivalentes: X'EEEF' e X'FA40'. Os IMEs do Microsoft Windows sempre geram X'FA40' quando 'i' é digitado. No geral, a IBM e a Microsoft utilizam o mesmo ponto de código primário para representar o caractere, exceto para os 13 caracteres a seguir: Tabela 4. Conversão de Ponto de Código de CCSID 943 Shift-JIS +-----------------------+----------------------+----------------------+ | Nome do Caractere | Ponto de Código | Ponto de Código | | (Ponto de Código | Shift-JIS Primário | Shift-JIS Primário | | Unicode) | da IBM | da Microsoft | +-----------------------+----------------------+----------------------+ | Numeral romano um | X'FA4A' | X'8754' | | (U+2160) | | | +-----------------------+----------------------+----------------------+ | Numeral romano dois | X'FA4B' | X'8755' | | (U+2161) | | | +-----------------------+----------------------+----------------------+ | Numeral romano três | X'FA4C' | X'8756' | | (U+2162) | | | +-----------------------+----------------------+----------------------+ | Numeral romano quatro | X'FA4D' | X'8757' | | (U+2163) | | | +-----------------------+----------------------+----------------------+ | Numeral romano cinco | X'FA4E' | X'8758' | | (U+2164) | | | +-----------------------+----------------------+----------------------+ | Numeral romano seis | X'FA4F' | X'8759' | | (U+2165) | | | +-----------------------+----------------------+----------------------+ | Numeral romano sete | X'FA50' | X'875A' | | (U+2166) | | | +-----------------------+----------------------+----------------------+ | Numeral romano oito | X'FA51' | X'875B' | | (U+2167) | | | +-----------------------+----------------------+----------------------+ | Numeral romano nove | X'FA52' | X'875C' | | (U+2168) | | | +-----------------------+----------------------+----------------------+ | Numeral romano dez | X'FA53' | X'875D' | | (U+2169) | | | +-----------------------+----------------------+----------------------+ | Estoque ideográfico | X'FA58' | X'FA58' | | entre parênteses | | | | (U+3231) | | | +-----------------------+----------------------+----------------------+ | Sinal numérico | X'FA59' | X'8782' | | (U+2116) | | | +-----------------------+----------------------+----------------------+ | Sinal de telefone | X'FA5A' | X'8754' | | (U+2121) | | | +-----------------------+----------------------+----------------------+ Os produtos IBM, como o DB2 UDB, utilizam principalmente pontos de código IBM, como X'FA4A' para apresentar o numeral romano um em letra maiúscula 'I', mas os produtos Microsoft utilizam X'8754' para representar o mesmo caractere. Um aplicativo Microsoft ODBC pode inserir o caractere 'I' como X'8754' em um banco de dados DB2 UDB do CCSID 943 e o DB2 UDB Control Center pode inserir o mesmo caractere como X'FA4A' no mesmo banco de dados CCSID 943. Porém, aplicativos ODBC podem localizar apenas as linhas que têm 'I' codificado como X'8754' e o DB2 UDB Control Center pode localizar apenas as linhas que têm 'I' codificado como X'FA4A'. Para ativar o DB2 UDB Control Center para selecionar 'I' como X'8754', você precisa substituir as tabelas de conversão padrão da IBM entre o CCSID 943 e o Unicode pelas tabelas de conversão alternativa da Microsoft. Problema 2 A lista de caracteres a seguir, quando convertida de CCSID 943 para Unicode, resultará em pontos de códigos diferentes dependendo da tabela de conversão que for utilizada (IBM ou Microsoft). Para esses caracteres, a tabela de conversão da IBM está de acordo com o Japanese Industry Standard JISX0208, JISX0212 e JISX0221. Tabela 5. Conversão de Ponto de Código de CCSID 943 em Unicode +-----------------------+----------------------+----------------------+ | Ponto de Código do | Ponto de Código | Ponto de Código | | Shift-JIS (Nome do | Primário da IBM | Primário da | | Caractere) | (Nome do Unicode) | Microsoft (Nome do | | | | Unicode) | +-----------------------+----------------------+----------------------+ | X'815C' (EM dash) | U+2014 (EM dash) | U+2015 (Horizontal | | | | bar) | +-----------------------+----------------------+----------------------+ | X'8160' (Wave dash) | U+301C (Wave dash) | U+FF5E (Fullwidth | | | | tilde) | +-----------------------+----------------------+----------------------+ | X'8161' (Double | U+2016 (Double | U+2225 (Parallel to) | | vertical line) | vertical line) | | +-----------------------+----------------------+----------------------+ | X'817C' (Minus sign) | U+2212 (Minus sign) | U+FF0D (Fullwidth | | | | hyphen-minus) | +-----------------------+----------------------+----------------------+ | X'FA55' (Broken bar) | U+00A6 (Broken bar) | U+FFE4 (Fullwidth | | | | broken bar) | +-----------------------+----------------------+----------------------+ Por exemplo, o caractere EM dash com o ponto de código CCSID 943 de X'815C' é convertido para o ponto de código do Unicode U+2014 ao utilizar a tabela de conversão da IBM. Porém, ele é convertido para U+2015 ao utilizar a tabela de conversão da Microsoft. Devido a essa diferença de mapeamento de conversão, você pode ter dois pontos de códigos diferentes para o mesmo caractere em um banco de dados Unicode do DB2 UDB. Isso pode criar problemas potenciais para aplicativos Microsoft ODBC porque eles tratariam o U+2014 como um ponto de código inválido. Para evitar esse problema potencial, é necessário substituir as tabelas de conversão padrão da IBM entre CCSID 943 e Unicode pelas tabelas de conversão alternativa da Microsoft. A utilização das tabelas de conversão alternativa da Microsoft entre CCSID 943 e Unicode deve ser restrita a ambientes fechados, onde os clientes DB2 UDB e os bancos de dados DB2 UDB tenham todos uma página de códigos de CCSID 943 e estejam todos utilizando as mesmas tabelas de conversão alternativas da Microsoft. Se você tiver um cliente DB2 UDB utilizando as tabelas de conversão padrão da IBM e outro cliente DB2 UDB utilizando as tabelas de conversão alternativas da Microsoft e ambos os clientes estiverem inserindo dados no mesmo banco de dados DB2 UDB de CCSID 943, o mesmo caractere poderá ser armazenado como pontos de códigos diferentes no banco de dados. Substituindo as Tabelas de Conversão do Unicode para o CCSID (Coded Character Set Identifier) 943 pelas Tabelas de Conversão da Microsoft Ao converter entre CCSID 943 e Unicode, são utilizadas as tabelas de conversão da página de códigos padrão do DB2 UDB (Universal Database). Se deseja utilizar uma versão diferente das tabelas de conversão, como a versão da Microsoft, você deverá substituir manualmente os arquivos da tabela de conversão padrão (.cnv). Pré-requisitos Antes de substituir os arquivos da tabela de conversão da página de códigos existente no diretório sqllib/conv, é necessário fazer backup dos arquivos, caso deseje alterá-los novamente. No UNIX e Linux, sqllib/conv é vinculado ao caminho de instalação do DB2 UDB. Restrições Para que a substituição da tabela de conversão seja efetiva, cada cliente do DB2 UDB que se conectar ao mesmo banco de dados deve ter sua tabela de conversão alterada. De outro modo, clientes diferentes podem armazenar o mesmo caractere utilizando pontos de código diferentes. Procedimento Para substituir as tabelas de conversão padrão do DB2 UDB para converter caracteres entre CCSID 943 e Unicode: 1. Copie sqllib/conv/ms/0943ucs2.cnv para sqllib/conv/0943ucs2.cnv. 2. Copie sqllib/conv/ms/ucs20943.cnv para sqllib/conv/ucs20943.cnv. 3. Reinicie o DB2 UDB. Sistema Operacional MVS Não É Suportado Apesar de ser mencionado na documentação, o sistema operacional MVS não é mais suportado pelo DB2 Universal Database. O MVS foi substituído pelo z/OS. Operações de Backup e Restauração (Linux 390) As operações de backup e restauração para e a partir de vários dispositivos de fita podem não funcionar se você estiver utilizando o sistema operacional Linux 390. Ativando o Acoplamento de Visualização ao Acessar o Development Center com o Hummingbird Exceed Ao acessar o Development Center no UNIX com o Hummingbird Exceed, a extensão XTEST versão 2.2 deve ser ativada antes que você possa mover e acoplar visualizações arrastando suas barras de título dentro do Development Center. Para ativar a extensão XTEST: 1. No menu Iniciar, selecione Programas -> Hummingbird Connectivity 7.0 -> Exceed -> XConfig. A janela XConfig é aberta. 2. Opcional: Se a configuração exigir uma senha, insira a senha do XConfig. 3. Dê um clique duplo no ícone Protocol. A janela Protocol é aberta. 4. Selecione a caixa de opções X Conformance Test Compatibility. 5. Na janela Protocol, clique no botão Extensions.... A janela Protocol Extensions será aberta. 6. Na lista Enable Extensions, selecione a caixa de opções XTEST(X11R6). 7. Clique em OK. Informações sobre Instalação, Migração, Upgrade e Configuração Marcas de revisão indicam texto que foi incluído ou alterado. Uma barra vertical ( | ) indica informações que foram incluídas ou alteradas para a Versão 8.2 FixPak 4 (equivalente à Versão 8.1 FixPak 11). Requisitos de Hardware e Software Os requisitos de hardware e de software podem ser visualizados no seguinte Web site: http://www.ibm.com/software/data/db2/udb/sysreqs.html Notas sobre Instalação Em plataformas UNIX e Linux, essas notas sobre instalação aplicam-se apenas à instalação de produtos novos. Para aplicar um FixPak, consulte o Leia-me do FixPak. Em plataformas Windows, essas notas de instalação aplicam-se à instalação de produtos novos e à aplicação de FixPaks. Se estiver aplicando um FixPak, estas Notas de Instalação devem ser utilizadas junto com o Leia-me do FixPak. Reveja esta seção inteira antes de instalar o DB2 Universal Database. Novas Opções para o Assistente Configuração do DB2 (Windows) Especificando o Caminho de Instalação na Linha de Comandos O assistente Configuração do DB2(R) permite que o caminho da instalação seja especificado na linha de comandos utilizando a nova opção: -p Installation Directory Essa opção substitui qualquer valor especificado no arquivo de resposta. A nova opção -p [INSTALLDIR] pode ser utilizada para alterar o caminho da instalação do produto, sem alterar o arquivo de resposta. Nova Opção NO_CONFIG para a Instalação A palavra-chave NO_CONFIG, quando incluída no arquivo de resposta, desativa quaisquer operações ativas e em execução. A instalação ainda define variáveis de ambiente e executa outra configuração básica, requerida para criar instâncias e para criar o DB2(R) Administration Server manualmente, após concluir a instalação. Não ocorre nenhuma configuração não essencial. Se essa opção for especificada no arquivo de resposta, quaisquer palavras-chave durante a configuração ativa e em execução são validadas, mas a configuração associada com essas palavras-chave não ocorre. Exibição do Progresso Uma nova opção foi fornecida para exibir apenas a janela de progresso do assistente Configuração do DB2(R) ao executar uma instalação não-assistida. A nova opção -m deve ser utilizada em conjunto com o parâmetro -u [response file]. Se a opção -m estiver especificada sem a opção do arquivo de resposta, a instalação retorna uma mensagem indicando que o argumento está incorreto. Se a opção -m estiver especificada, apenas as janelas que não requerem entradas do usuário são exibidas. Por exemplo, ao executar o comando setup.exe, a instalação exibe janelas, mas não solicita nenhuma entrada. Quando a instalação termina, as janelas fecham e o processo setup.exe acaba. Alterações para o Assistente Configuração do DB2 (Windows) Opções do Assistente Configuração do DB2 (setup.exe) O arquivo setup.exe que inicia a instalação do DB2 agora aguarda até a saída de instalação antes de retornar. Essa configuração é o comportamento padrão. Atualmente, há uma opção -w, no entanto, esse parâmetro não altera mais o comportamento do assistente Configuração do DB2. É possível utilizar a nova opção -c para forçar o assistente Configuração do DB2 para sair imediatamente, após iniciar a instalação. Se selecionar essa opção, o código de retorno da instalação não está disponível pela monitoração do código de saída do arquivo setup.exe. É retornado um erro se as opções -w e -c forem especificadas juntas. Restrições Estendidas da Instalação de Segurança (Windows) O DB2 UDB (Universal Database(TM)) Versão 8.2 introduziu um novo recurso que protege o acesso aos recursos do DB2, explorando os recursos de segurança no sistema de arquivo NTFS e os recursos de segurança do sistema operacional Windows(R). O acesso seguro é alcançado principalmente modificando a ACL (Lista de Controle de Acesso) dos arquivos DB2, as entradas de registro e os objetos de memória do tempo de execução. Por padrão, o assistente de instalação do DB2 permite esse novo recurso de segurança. A segurança estendida do Windows(R) pode ser desativada desempenhando uma instalação customizada e limpando a caixa de opções Segurança Aprimorada do Windows(R) na janela Ativar a Segurança do Sistema Operacional para Objetos do DB2. A única maneira recomendada para desativar o novo recurso de segurança é executar o comando db2secv82. No entanto, o comando db2secv82 deve ser executado imediatamente seguindo a instalação. Informações adicionais sobre o comando db2secv82 podem ser localizadas no DB2 Information Center em http://publib.boulder.ibm.com/infocenter/db2help/ para obter detalhes. É possível instalar o DB2 UDB com um ID do usuário, mas, a menos que o ID do usuário pertença a um dos grupos DB2ADMNS, DB2USERS ou Administradores Locais, esse ID do usuário não estará apto a executar comandos do DB2. Apenas usuários que pertencem aos grupos DB2ADMNS, DB2USERS ou Administradores Locais possuem acesso aos arquivos do sistema DB2, chaves de registro, compartilhamentos de rede e serviços de DB2 no computador local no qual o DB2 UDB é executado. Geralmente, os usuários que pertencem ao grupo DB2ADMNS, assim como os usuários que pertencem ao grupo Administradores Locais, possuem controle completo dos recursos do DB2. Os usuários pertencentes ao grupo DB2USERS possuem acesso de gravação e execução. Após instalar o DB2 UDB Versão 8.2, os usuários que precisam de acesso de leitura (para executar consultas, por exemplo) devem ser incluídos ao grupo DB2USERS. Os usuários que necessitam de acesso de controle completo, como administradores de banco de dados, devem ser incluídos aos grupos DB2ADMNS. O gerenciamento de usuários precisa ser feito de acordo com as políticas de segurança no ambiente. Efeitos das Novas Medidas de Segurança em uma Instalação Típica Durante a instalação típica do DB2 UDB no Windows, a segurança estendida é ativada por padrão. Por padrão, o DB2 UDB cria os grupos DB2ADMNS e DB2USERS. Se houver um conflito com nomes de grupos existentes, será solicitado que altere os nomes de grupos. Se necessário, você poderá especificar seus próprios valores. Se você escolher utilizar um grupo de segurança existente, as políticas de segurança para esse grupo serão modificadas para satisfazer o que é requerido pelo DB2 UDB. Ao escolher um grupo de segurança existente, você pode estar aumentando os privilégios dos usuários, se os usuários já existirem nesse grupo. Efeitos das Novas Medidas de Segurança em uma Instalação Personalizada ou FixPak Durante uma instalação personalizada ou de FixPak do DB2 UDB no Windows, o painel Ativar a Segurança do Sistema Operacional para Objetos do DB2 é aberto. Se desejar ativar a segurança aprimorada do Windows, é possível aceitar o padrão clicando em Avançar. Se desejar desativar a segurança aprimorada do Windows, é possível limpar a caixa de opções Ativar a Segurança do Sistema Operacional na janela Ativar a Segurança do Sistema Operacional para Objetos do DB2. Incluindo IDs do Usuário para Acessar o DB2 UDB Após a Instalação Após uma instalação típica ou personalizada, é necessário incluir IDs do usuário aos grupos de usuários DB2ADMNS e DB2USERS apropriados para fornecer acesso ao DB2 UDB. Para incluir usuários no grupo apropriado: 1. Inicie a ferramenta Gerenciador de Usuários e Senhas. 2. Selecione a partir da lista o nome do usuário que deseja incluir. 3. Clique em Propriedades. Na janela Propriedades, clique na guia Filiação de Grupo. 4. Selecione o botão de opções Outro. 5. Selecione a partir da lista drop-down o grupo apropriado. Ativando a Segurança Aprimorada do Windows Após a Instalação Se você instalou o DB2 UDB e optou por não ativar o novo recurso de segurança, ainda poderá fazê-lo após a instalação, executando o comando db2secv82.exe. Depois de ativar este recurso de segurança utilizando o comando db2secv82.exe, você terá duas opções de restauração: Opção 1 Execute o comando db2secv82.exe -r imediatamente, sem fazer alterações adicionais no sistema. Se houve alguma alteração no sistema, será necessário utilizar a opção 2. Opção 2 Inclua o grupo Todos nos grupos DB2ADMNS e DB2USERS. Incluir o grupo Todos a esses grupos de segurança fornece efetivamente a todos os usuários todos os privilégios para utilizar o DB2 UDB. No entanto, não é recomendado desativar a segurança, pois isso pode resultar em exposições de segurança indesejadas. Desativar a segurança pode resultar na impossibilidade de alguns usuários em utilizar o DB2 UDB, pois a ACL criada pelo DB2 UDB no tempo de execução não corresponde mais com a ACL aplicada para o sistema de arquivo. O Caminho do Diretório Não Pode Conter Espaços em Branco (Linux e UNIX) Se o programa db2setup for executado a partir de um diretório cujo caminho inclui um espaço em branco, a instalação falhará com o seguinte erro: : não localizado Coloque a imagem instalável em um diretório cujo caminho não inclua espaços. Requisito do Red Hat Enterprise Linux 4 O pacote compat-libstdc++-33 deve ser instalado antes de instalar o DB2 Universal Database para Linux(TM) no Red Hat Enterprise Linux(R) 4. Níveis do JDK para DB2 UDB (Linux no IA64 e Linux on POWER) Ao instalar a Versão 8.2 do DB2 UDB (Universal Database) no Linux, a instalação baseada em RPM tenta instalar o IBM Java RPM (IBMJava2-SDK-ppc-1.4.1-2.0.ppc.rpm). Se houver um nível posterior do RPM (como IBMJava2-SDK-ppc-1.5.0-2.0.ppc.rpm), o RPM de nível inferior não é instalado. Porém, neste caso, a instalação deixa o parâmetro de configuração do banco de dados JDK_PATH apontando para o caminho de Java 1.4, /opt/IBMJava2-14/. Como resultado, nenhuma funcionalidade dependente de Java, incluindo a instalação do DB2 Tools Catalog, funcionará. Pré-requisito É necessário executar o seguinte comando como o proprietário da instância. Procedimento 1. Para apontar o DB2 UDB ao IBM(R) Developer Kit correto, execute o seguinte comando: db2 update dbm cfg using JDK_PATH path em que path é o caminho da instalação de 1.5, como /opt/IBMJava2-15. Descompactando Imagens de Instalação (Linux e UNIX) Algumas imagens de instalação são entregues em formato compactado ou gzip nos CDs do produto. Antes de poder instalar o DB2 UDB (Universal Database) a partir desses formatos, é necessário copiar a imagem de instalação para um diretório temporário e descompactar a imagem de instalação. As imagens de instalação compactadas ou em gzip no CD têm o nome de arquivo PRODUCT.tar.Z ou PRODUCT.tar.gz, onde PRODUCT é o produto do DB2 que você está instalando. Por exemplo, se você estiver instalando o DB2 UDB Enterprise Server Edition, a imagem compactada no CD relevante poderá ser chamada de ese.tar.Z ou ese.tar.gz. Além dos requisitos de disco para o software, é necessário ter um sistema de arquivos com 2 gigabytes de espaço livre para conter o arquivo tar.Z ou tar.gz e a imagem de instalação descompactada. Procedimento Para descompactar imagens de instalação, execute as seguintes etapas: 1. Copie a imagem compactada ou zipada para um sistema de arquivos de diretório temporário contendo pelo menos 2 gigabytes de espaço livre. 2. Vá para o diretório para o qual copiou a imagem de instalação digitando cd /TMP, em que /TMP representa o diretório para o qual a imagem compactada foi copiada. 3. Se o produto tiver a extensão *.tar.Z, digite o seguinte comando para descompactar a imagem de instalação: zcat PRODUCT.tar.Z | tar -xvf - onde PRODUCT é o produto do DB2 que você está instalando. 4. Se o produto tiver a extensão *.tar.gz, digite o seguinte comando para descompactar a imagem de instalação: gunzip -c PRODUCT.tar.gz | tar -xvf - onde PRODUCT é o produto do DB2 que você está instalando. Notas: a. gunzip faz parte da configuração de instalação padrão do AIX 5L. Se você não tiver o gunzip, instale o conjunto de arquivos rpm.rte a partir da mídia de instalação do AIX 5L. O conjunto de arquivos rpm.rte contém o gunzip. b. É possível também fazer download de gzip para AIX 5L, que inclui o gunzip, a partir de http://www.ibm.com/servers/aix/products/aixos/linux/rpmgroups.html. 5. Para executar a instalação utilizando o assistente de Instalação do DB2, consulte a seção Instalando o DB2 UDB a partir de Imagens de Instalação (Linux e UNIX). O DB2 UDB Não Permite um Caminho de Instalação que Não Esteja em Inglês (Windows) Durante a instalação do DB2 UDB (Universal Database) no Windows, você pode digitar o caminho de diretório para o DB2 UDB. No entanto, o nome do caminho de diretório digitado pode conter apenas caracteres em inglês. Fazendo Download e Descompactando FixPaks para Vários Produtos (Windows) A partir do DB2 Versão 8 para Windows Fixpak 3, a IBM está fornecendo FixPaks específicos do produto em vez de um FixPak geral. Esta mudança afeta apenas produtos DB2 Versão 8 em plataformas Windows. Se possuir mais de um produto DB2 instalado, será requerido que seja feito o download e a descompactação de uma imagem para cada produto DB2 antes de instalar. Por exemplo, se você tiver o DB2 UDB Enterprise Server Edition Versão 8 e o DB2 Spatial Extender Versão 8 instalados no mesmo sistema Windows, será necessário fazer download da imagem de FixPak do DB2 UDB Enterprise Server Edition e da imagem de FixPak do Spatial Extender. É necessário, então, descompactar cada uma desses imagens de FixPak para o mesmo diretório. Todas as imagens devem ser descompactadas para que a instalação da GUI ou a instalação silenciosa possa prosseguir. Para obter instruções completas de instalação do FixPak, consulte o Leia-me mais recente do FixPak do DB2 UDB. Instalando o DB2 UDB a partir de Imagens de Instalação (Linux e UNIX) Pré-requisitos Antes de iniciar o assistente do DB2 Setup: * Certifique-se de que seu sistema atenda os requisitos de instalação, de memória e de disco. Consulte a seção Requisitos de Hardware e de Software. Nota: O DB2 UDB Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) introduz um novo conjunto de imagens de instalação para distribuições Linux(R) em arquiteturas x86 (Intel(R) e AMD de 32 bits) e x86-64 (Intel(R) EM64T e AMD64 de 64 bits) baseadas no kernel 2.6, como Red Hat Enterprise Linux 4 e SuSE Linux Enterprise Server 9. Certifique-se de que adquiriu o conjunto apropriado de imagens de instalação para a distribuição Linux antes de prosseguir com a instalação. * Certifique-se de ler os Pré-requisitos de Instalação. O arquivo install.txt ou install.htm está localizado no CD no caminho: /cdrom/doc/language/ em que: * cdrom refere-se ao ponto de montagem * language refere-se ao diretório do idioma que consiste em um código de cinco caracteres. * Você precisa de autoridade root para executar a instalação. * O CD do produto DB2 deve ser montado no sistema. Procedimento Se as imagens de instalação forem entregues em formato compactado ou gzip nos CDs do produto, será necessário descompactar a imagem de instalação antes de poder instalar o DB2 UDB. Consulte a seção Descompactando Imagens de Instalação (Linux e UNIX) para obter detalhes. Para executar a instalação utilizando o assistente para Instalação do DB2, digite o seguinte comando: ./PRODUCT/db2setup em que PRODUCT é o produto do DB2 que você está instalando. Por exemplo, se você estiver instalando o DB2 UDB Enterprise Server Edition, digite ./ese/db2setup. É aberta a Barra de Lançamento de instalação. Prossiga pelos painéis de instalação. Instalando o DB2 UDB a partir de Imagens de Instalação (Windows) Pré-requisitos Antes de iniciar o assistente do DB2 Setup: * Certifique-se de que seu sistema atenda os requisitos de instalação, de memória e de disco. Consulte a seção Requisitos de Hardware e de Software. * Certifique-se de ler os Pré-requisitos de Instalação. O arquivo install.txt ou install.htm está localizado no CD no caminho: x:\doc\language\ em que: * x representa a unidade de CD * language refere-se ao diretório do idioma que consiste em um código de cinco caracteres. * É necessário possuir uma conta do usuário de Administrador local com os direitos de usuário recomendados para executar a instalação. Para executar a instalação utilizando o assistente para Instalação do DB2, insira o CD na unidade. Se ativado, o recurso de execução automática inicia automaticamente a barra de lançamento de Instalação do DB2. Procedimento Se o recurso de execução automática não estiver ativado, será possível iniciar o assistente para Instalação do DB2 manualmente: 1. Clique em Iniciar e selecione a opção Executar. 2. No campo Abrir, forneça o seguinte comando: x:\setup /i language em que: * x: representa a unidade de CD * language é o identificador de território para seu idioma (por exemplo, EN para Inglês). O parâmetro /i language é opcional. Se não for especificado, o assistente para Instalação do DB2 será executado no mesmo idioma que seu sistema operacional. 3. Clique em OK. É aberta a barra de lançamento de Instalação do DB2. Prossiga pelos painéis de instalação. Nota: O produto DB2 Run-Time Client Lite utiliza outros parâmetros da linha de comandos. Visite o DB2 Information Center em http://publib.boulder.ibm.com/infocenter/db2help/ para obter detalhes. Espaço em Disco Requerido para uma Instalação de Arquivo de Resposta do DB2 UDB Ao instalar um produto DB2 Universal Database utilizando um arquivo de resposta, 1 MB de espaço livre em disco é requerido no diretório etc. Se você receber a mensagem de erro DBI1191I durante a instalação de um arquivo de resposta, a mensagem indica que não existe espaço livre em disco no diretório raiz. Esta mensagem está incorreta. Verifique a quantidade de espaço livre em disco no diretório etc. É requerido um mínimo de 1 MB de espaço livre em disco antes da nova execução da instalação. Restrições à Inclusão de Produtos Utilizando o Comando db2setup (Linux e UNIX) Após a instalação de um produto DB2, produtos adicionais do DB2 poderão ser incluídos. Se utilizar o comando db2setup para incluir produtos, as restrições e recomendações a seguir se aplicam. Recomendações Tanto o produto instalado quanto o produto a ser incluído devem estar no mesmo nível de código. Por exemplo, o DB2 UDB (Universal Database) Enterprise Server Edition Server Versão 8 FixPak 5 já está instalado e você deseja incluir o produto DB2 Information Integrator. Nesse caso, o DB2 Information Integrator deve estar no nível Versão 8 FixPak 5. Restrições * Se o nível de fixpak do DB2 for maior do que o nível de fixpak do produto incluído, a combinação não será permitida. No entanto, como o nível do fixpak do produto incluído é menor do que o nível do fixpak do DB2, o nível do fixpak do DB2 deve ser aplicado novamente após instalar o produto adicional. Consulte o LEIA-ME do FixPak apropriado para obter instruções para reaplicar o fixpak. * Se o nível de fixpak do DB2 for menor do que o nível de fixpak do produto incluído, será gerado um erro. O produto que está sendo incluído não pode estar em um nível de fixpak mais alto que o DB2 UDB. Neste caso, é necessário, primeiramente, trazer o DB2 UDB para o nível apropriado e, em seguida, instalar o produto adicional. Consulte o LEIA-ME do FixPax para obter instruções. A tabela a seguir resume as combinações do db2setup: Tabela 6. Combinações do db2setup +-------------+-------------+-----------------------------------------+ | Nível do | Nível do | Essa Combinação é Possível? | | FixPak do | FixPak do | | | DB2 | Produto | | | | Adicional | | +-------------+-------------+-----------------------------------------+ | Versão 8 | Versão 8 | Sim. É recomendado. | | FixPak 3 | FixPak 3 | | +-------------+-------------+-----------------------------------------+ | Versão 8 | Versão 8 GA | Sim, mas a Versão 8 FixPak 3 deve ser | | FixPak 3 | | reaplicada. Consulte o Arquivo Leia-me | | | | apropriado do FixPak para obter | | | | instruções sobre como reaplicar o | | | | fixpak, acessando o Web site de Suporte | | | | do DB2. | +-------------+-------------+-----------------------------------------+ | Versão 8 | Versão 8 | Não. O DB2 deve se colocado no nível | | FixPak 3 | FixPak 5 | mais alto de fix pack (neste exemplo, | | | | Versão 8 FixPak 5) antes de instalar o | | | | produto adicional. Consulte o arquivo | | | | Leia-me apropriado do FixPak para obter | | | | instruções sobre como instalar o FixPak | | | | requerido para a Versão 8, visitando o | | | | Web site de Suporte do DB2. | +-------------+-------------+-----------------------------------------+ O endereço do Web site de suporte do DB2 é http://www.ibm.com/software/data/db2/udb/support.html Ferramentas da Web do DB2 Os servidores de aplicativos suportados pelas Ferramentas da Web do DB2 para os seguintes idiomas precisam ser compatíveis com a especificação de Servlet 2.3: * Japonês * Coreano * Chinês Simplificado * Chinês Tradicional * Russo * Polonês Ligação dos Pacotes do Query Patroller após Aplicar os FixPaks Se tiver o Query Patroller instalado, após aplicar o fixpak e fazer todas as tarefas de pós-instalação do fixpak, siga as seguintes etapas: 1. Efetue login como um usuário com autoridade DBADM. 2. Altere para o diretório apropriado: * INSTPATH/bnd (Linux e UNIX) * INSTPATH\bnd (Windows) onde INSTPATH é o caminho da instância do DB2 UDB. 3. Execute os seguintes comandos: db2 connect to dbname db2 bind @qpserver.lst blocking all grant public Instalação do Query Patroller no FixPak Nível 3 ou Posterior Query Patroller é um sistema de gerenciamento de consultas utilizado para controlar o fluxo de consultas ao seu banco de dados do DB2 UDB. No DB2 UDB Versão 8.1.2, o DB2 Query Patroller tornou-se um produto independente. Ele não é mais um componente do DB2 Warehouse Manager. Se você tiver o DB2 UDB Versão 8 FixPak 3 ou posterior instalado e instalar a base do DB2 Query Patroller ou a versão GA, será necessário reaplicar o DB2 UDB FixPak 3 ou posterior. Caso contrário, as alterações do Query Patroller não serão aplicadas ao nível do FixPak do DB2 UDB no qual você está. Se estiver instalando o servidor Query Patroller, você deverá também atualizar as instâncias do DB2 UDB depois de reaplicar o nível do FixPak do DB2 UDB. As instâncias devem ser reiniciadas após serem atualizadas. Instalação do Servidor Query Patroller Ao instalar o servidor Query Patroller, observe o seguinte: * Se selecionar Baseado no Uso do Computador a partir da janela Selecionar Tipo de Instalação, utilizando o Assistente para Configuração do DB2, e selecionar Servidor a partir da janela Selecionar Como o Computador Será Utilizado, o Query Patroller Center não será instalado. Para instalar o Query Patroller Center, selecione os tipos de instalação Completa ou Personalizada, a partir da janela Selecionar Tipo de Instalação. * O Guia do DB2 Query Patroller(TM) utiliza painéis de instalação a partir do tipo de instalação baseado no uso do Computador para ilustrar como instalar o servidor Query Patroller utilizando o assistente para Instalação do DB2. Não é necessário utilizar o tipo de instalação baseado em uso do Computador para instalar o servidor Query Patroller. Você pode utilizar os tipos de instalação Completa ou Personalizada para instalar o servidor Query Patroller. * Os Clientes do DB2 que possuem Ferramentas de Clientes do Query Patroller instaladas devem conectar-se a uma partição que possui o servidor Query Patroller instalado. Em um ambiente de banco de dados típico particionado, o servidor Query Patroller é instalado em todas as partições, portanto, é possível escolher qualquer partição para ser a partição coordenadora e ainda é possível utilizar as ferramentas de clientes do Query Patroller. Definindo um Novo Grupo de Partições do Banco de Dados no Query Patroller Quando definir um novo espaço de tabelas durante a instalação do Query Patroller em um ambiente particionado, será possível selecionar um grupo de partições do banco de dados existente. Como alternativa, é possível configurar um novo grupo de partições do banco de dados para o novo espaço de tabelas. Se você optar por configurar um novo grupo de partições do banco de dados, poderá selecionar apenas uma partição do banco de dados da lista de opções no painel de instalação para esse novo grupo de partições do banco de dados. Se desejar incluir partições no novo grupo de partições do banco de dados, será necessário incluí-las manualmente após a conclusão da instalação. Instalação das Ferramentas do Cliente Query Patroller Os clientes DB2 não requerem que sejam instaladas as ferramentas do cliente Query Patroller para enviar consultas ao servidor Query Patroller. Recriando Versões Beta de Bancos de Dados Se você criou bancos de dados em uma versão beta do DB2 UDB Versão 8.2, será necessário recriá-los na versão oficial da Versão 8.2. Isso inclui a recriação de bancos de dados espaciais para o DB2 Geodetic Extender Versão 8.2. Instalando Arquivos MDAC para Versões do Idioma Nacional do DB2 UDB Se você não instalar a versão do idioma nacional do Microsoft MDAC (Data Access Components) 2.7 antes de instalar a versão do idioma nacional do DB2 UDB (Universal Database) Versão 8.2, o DB2 UDB instalará os arquivos MDAC em inglês por padrão. Essa instalação faz com que os painéis do Windows ODBC Data Source Administrator apareçam não traduzidos se seu sistema operacional estiver em um idioma diferente do inglês. Para corrigir esse problema, instale o pacote configurável " MDAC 2.7 RTM - Refresh" a partir do Web site da Microsoft em http://msdn.microsoft.com/data/downloads/updates/default.aspx. Escolha o idioma que deseja instalar, faça o download do executável requerido e execute-o. Este procedimento instala os arquivos do ODBC Data Source Administrator traduzidos. Política de Licença do DB2 para o DB2 Universal Database Workgroup Server Edition A política de licença da Internet não é válida para o DB2 Universal Database Workgroup Server Edition. Se você solicitar uma licença para usuários da Internet, será necessário comprar o DB2 Universal Database Workgroup Server Unlimited Edition. Instalando Fontes Asiáticas Adicionais (Linux) A IBM oferece pacotes adicionais de fontes para Linux que contêm suporte adicional a DBCS (Conjunto de Caracteres de Byte Duplo) para caracteres asiáticos. Esses pacotes de fontes são necessários com algumas versões do Linux que instalam apenas as fontes requeridas para exibir os caracteres específicos do país ou da região. Se você executar o comando db2setup e localizar caracteres ausentes na interface do assistente de configuração do DB2, é provável que seu sistema Linux não tenha todas as fontes necessárias instaladas. Para ativar o comando db2setup para referir-se adequadamente às fontes embutidas no CD de instalação, execute o seguinte: 1. Forneça o seguinte comando: export JAVA_FONTS=//db2//java/jre/lib/fonts em que é o local da imagem de instalação e é um nome de diretório com um prefixo Linux. 2. Execute o comando db2setup novamente. Se você observar caracteres ausentes ao utilizar as ferramentas da GUI do DB2 depois da instalação, instale as fontes necessárias fornecidas com o produto do DB2. Estas fontes podem ser encontradas no diretório fonts em qualquer um dos seguintes CDs: * IBM(R) Developer Kit, Java(TM) Technology Edition (64-bit) for AIX 5L * DB2 Embedded Application Server and applications (XML registry, Web Administration tools and Java(TM) distributed debugger) para seu sistema operacional No diretório fonts, existem dois tipos de fontes disponíveis: Times New Roman WorldType e Monotype Sans Duospace WorldType. Para cada tipo, há uma fonte específica do país ou da região. A seguinte tabela relaciona as oito fontes fornecidas em formato compactado no diretório fonts. Tabela 7. Nomes do Arquivo das Fontes Asiáticas Adicionais +-------------------------+---------------------+---------------------+ | Tipo de Fonte | Nome do Arquivo da | País ou Região | | | Fonte | | +-------------------------+---------------------+---------------------+ | Times New Roman WT J | tnrwt_j.zip | Japão e outros | | | | países ou regiões | +-------------------------+---------------------+---------------------+ | Times New Roman WT K | tnrwt_k.zip | Coréia | +-------------------------+---------------------+---------------------+ | Times New Roman WT SC | tnrwt_s.zip | China (Chinês | | | | Simplificado) | +-------------------------+---------------------+---------------------+ | Times New Roman WT TC | tnrwt_t.zip | Taiwan (Chinês | | | | Tradicional) | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdj.zip | Japão e outros | | WT J | | países ou regiões | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdk.zip | Coréia | | WT K | | | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansds.zip | China (Chinês | | WT SC | | Simplificado) | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdt.zip | Taiwan (Chinês | | WT TC | | Tradicional) | +-------------------------+---------------------+---------------------+ Nota: Essas fontes não substituem as fontes do sistema. Essas fontes devem ser utilizadas juntamente com o DB2 Universal Database. Você não pode fazer parte dos serviços de distribuição ou venda geral ou irrestrita dessas fontes. Procedimento Para instalar uma fonte asiática adicional: 1. Descompacte o pacote da fonte. 2. Copie o pacote de fontes para o diretório /opt/IBMJava2-141/jre/lib/fonts. É necessário criar o diretório se ele ainda não existir. 3. Digite o seguinte comando: export JAVA_FONTS=/opt/IBMJava2-141/jre/lib/fonts Você precisa instalar pelo menos uma fonte de cada tipo para seu país ou região. Se estiver na China, Coréia ou Taiwan, utilize as versões específicas do país ou região. Caso contrário, utilize a versão japonesa das fontes. Se tiver espaço no sistema, instale todas as oito fontes. Configurando o Development Center para Utilizar Java Development Kits (Linux) Em alguns casos, o DB2 Universal Database não instala um Java Development Kit no sistema operacional do cliente. Para utilizar o Development Center para desenvolver procedimentos armazenados Java nesses clientes, é necessário apontar o Development Center para o local de um Java Development Kit instalado. Siga estas etapas para identificar o local de um Java Development Kit: 1. No Development Center, selecione o item de menu Projeto -> Configurações de Ambiente. 2. No bloco de notas Configurações de Ambiente, selecione o nó Processo. 3. Na seção Java Home da página Processo, selecione o Nível de JDK que será utilizado para construir e executar procedimentos armazenados Java. 4. No campo Diretório, especifique um caminho de diretório existente ou que seja acessível no cliente em que o JDK selecionado está instalado. 5. Se o computador cliente for utilizado para desenvolver procedimentos armazenados Java em vários servidores DB2, poderá ser necessário selecionar níveis adicionais de JDK e especificar suas localizações instaladas, dependendo de quais níveis de JDK forem utilizados por esses servidores. No servidor DB2, a instalação do Java Development Kit pode não ter vinculado algumas bibliotecas Java ao subdiretório /usr/lib do sistema. Esses links são necessários para construir e executar procedimentos armazenados Java. A seção intitulada "Configurando o Ambiente Linux Java" na seção Problemas de Compatibilidade destas Notas sobre o Release mostra como criar os links para um Java Development Kit em um cliente Linux. Criando IDs de Grupo e de Usuário em Distribuições United Linux 1.0 e SuSE Linux Para criar IDs de grupo e de usuário para uma instalação do DB2 UDB Versão 8.2 em distribuições United Linux 1.0 e SuSE Linux, utilize os comandos groupadd e useradd, respectivamente. O Suplemento de Instalação e Configuração Versão 8.2 documenta incorretamente os comandos mkgroup e mkuser para criar IDs de grupo e de usuário, respectivamente. O Daemon do Sistema de Ajuda Não É Iniciado após a Instalação com o Comando db2_install (UNIX e Linux) Se você estiver instalando o DB2 Information Center em plataformas UNIX e Linux utilizando o comando db2_install, o daemon do sistema de ajuda (db2icd) não será iniciado seguindo a instalação. É necessário iniciar manualmente o daemon do sistema de ajuda ou reiniciar seu computador para acessar a documentação. Consulte o tópico "Daemon do DB2 Information Center" na seção Atualizações de Documentação | Instalação e Configuração das Notas sobre o Release. Ready for Tivoli Enablement (UNIX) Ao adquirir um produto de software da IBM que contém o logotipo do Ready for Tivoli, você pode gerenciar seus produtos de software da IBM através de várias ofertas da Tivoli. Os produtos Tivoli permitem descobrir, monitorar e inventariar automaticamente um ou mais aplicativos Ready for Tivoli. Os produtos de software da IBM que são Ready for Tivoli podem ser gerenciados através de produtos como o IBM Tivoli Configuration Manager. O IBM Tivoli Monitoring para Databases fornece suporte para todos os principais bancos de dados incluindo DB2 UDB (Universal Database), Oracle e Informix. Para obter informações adicionais, aponte seu navegador para o Web site da IBM em http://www.ibm.com/software/tivoli/ Ready for Tivoli Instrumentation e DB2 UDB Versão 8 Para instalar e configurar a instrumentação, faça com que seu administrador Tivoli faça o seguinte: 1. O arquivo de assinatura Tivoli Ready para este produto do DB2 é denominado xxx.sys. A partir do FixPak 4, estes arquivos de assinatura serão atualizados por FixPak em vez de serem por release de versão. Confirme se os arquivos de assinatura estão instalados no diretório: %install DB2DIR%/tivready 2. Instale e configure o Tivoli GEM 2.2 Tivoli Ready Enablement em todos os computadores que você pretende monitorar. Para fazer download do Tivoli Ready Enablement e obter instruções detalhadas de instalação e uso, aponte seu navegador para http://www.ibm.com/software/sysmgmt/products/support/ 3. A capacidade de gerenciamento avançada de banco de dados é obtida através do IBM Tivoli Monitoring para Databases. O produto ITM para Databases utiliza o produto Distributed Monitoring da nova edição avançada (chamado IBM Tivoli Monitoring ou ITM) e fornece um aprimoramento significativo na capacidade de monitoração com base no uso desse novo mecanismo de monitoração. O ITM para Databases fornece suporte ao DB2 UDB através de um PAC (Proactive Analysis Component). Este PAC está fortemente integrado ao DB2 UDB e fornece um conjunto de monitores prontos para implementação e ativação rápidas. Monitores, limites e tarefas personalizados também podem ser definidos pelo DBA. Informações adicionais estão disponíveis em: http://www.ibm.com/software/tivoli/ Informações sobre outros produtos Tivoli estão disponíveis em: http://www.ibm.com/software/tivoli/ Ferramenta de Redução da Imagem de Instalação - db2iprune (Windows) O utilitário da linha de comandos db2iprune pode reduzir o tamanho da imagem de instalação do produto DB2 UDB (Universal Database) Windows. A ferramenta é particularmente útil para implementações em grande escala do DB2 UDB. A ferramenta é útil também para incorporar o DB2 UDB em um aplicativo. A ferramenta db2iprune consiste em um campo de entrada e um arquivo executável. O arquivo de entrada (.prn) contém uma lista completa de componentes removíveis e é utilizado para indicar quais recursos e idiomas você deseja remover da imagem de instalação. Em seguida, o arquivo executável db2iprune (db2iprune.exe) remove os arquivos de gabinetes associados a esses recursos e idiomas. O resultado é uma imagem nova, menor, do DB2 UDB que pode ser instalada utilizando os métodos de instalação regulares. Os fixpaks também são aplicados utilizando métodos regulares. Quando o fixpak é instalado, ele detecta e atualiza apenas os componentes que foram instalados utilizando db2iprune. A ferramenta db2iprune está localizada no diretório \db2\windows\utilities\db2iprune no CD de instalação do produto DB2 UDB. Este diretório também contém um arquivo Leia-me. Consulte o Leia-me do db2iprune para obter instruções detalhadas sobre como utilizar o db2iprune. Restrição de Instalação da Documentação do DB2 Universal Database, Versão 8 (Windows) No Windows, não instale o DB2 UDB (Universal Database), Versão 8 Information Center (documentação HTML) em uma estação de trabalho ou servidor em que um produto DB2 UDB, Versão 7 (ou anterior) já está instalado. O instalador detecta a versão anterior e remove o produto anterior. Instalações Anteriores Atualizadas para o Nível Mais Recente (Windows) Se você tiver um produto DB2 instalado em um nível anterior da Versão 8, a imagem de instalação detectará isso e atualizará o produto para o nível mais recente. Requisitos de Sistema para o DB2 .NET Data Provider (Windows) Antes de utilizar o programa de instalação do DB2 UDB (Universal Database) para instalar o DB2 .NET Data Provider, você deve ter o .NET Framework já instalado no computador. Se o .NET Framework não estiver instalado, o programa de instalação do DB2 UDB não irá registrar o DB2 .NET Data Provider. Se o DB2 UDB estiver instalado e o .NET Framework não estiver instalado, o DB2 .NET Data Provider não será registrado. Se o .NET Framework for instalado em uma data posterior, você poderá executar a executável db2nmpreg para registrar o provedor. Essa executável reside no diretório sqllib\bin. Não há parâmetros. Para registrar o DB2 .NET Data Provider, digite db2nmpreg de qualquer janela de comandos. Instalando o DB2 Versão 8 Clients e o DB2 Connect PE como Não-administrador (Windows) Ao instalar um cliente de Administração do DB2, cliente do DB2 Application Development ou DB2 Connect Personal Edition, você deve atualizar seu arquivo de serviços TCP/IP do Windows se as condições a seguir se aplicarem: * O recurso data warehousing é selecionado no programa de instalação * O ID do usuário que está executando a instalação não é um membro do grupo Administradores no computador de destino * O produto está sendo instalado em qualquer um dos seguintes sistemas operacionais: Windows NT, Windows 2000, Windows XP ou Windows Server 2003. Se todas essas condições se aplicarem, as entradas a seguir precisarão ser incluídas no arquivo de serviços TCP/IP do Windows: Tabela 8. Entradas Requeridas no Arquivo de Serviços TCP/IP do Windows +----------------------------------+----------------------------------+ | Nome da Porta | Número da Porta | +----------------------------------+----------------------------------+ | vwkernel | 11000/tcp | +----------------------------------+----------------------------------+ | vwd | 11001/tcp | +----------------------------------+----------------------------------+ | vwlogger | 11002/tcp | +----------------------------------+----------------------------------+ Sem essas entradas, o Data Warehouse Center não funcionará de maneira apropriada. Notas de Migração Além dos tópicos apresentados aqui, informações atuais sobre os produtos de migração DB2 podem ser localizadas no DB2 Migration Portal: http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21200005 Technote db2updv8 Para obter as informações mais recentes sobre o db2updv8, incluindo detalhes de uso importantes e soluções alternativas para problemas comuns, consulte o technote 1178848 no endereço http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21178848 Após Executar db2updv8, Não É Suportado Retornar à V 8.1 Após executar o comando db2updv8 para atualizar os catálogos do sistema para o nível atual da Versão 8, o retorno à V 8.1 não é suportado. Migração das Tabelas EXPLAIN Para criar as tabelas EXPLAIN, o comando db2updv8 deve ser executado ao aplicar o DB2 UDB (Universal Database(TM)) Versão 8.2.2 (equivalente à Versão 8.1 Fixpak 9) ou superior a um DB2 UDB Versão 8.2 FixPak 1 (equivalente à Versão 8.1 Fixpak 8) ou inferior. Executar o comando db2updv8 cria a função EXPLAIN_GET_MSG, que permite que EXPLAIN.DDL seja executado de novo. Se você tentar criar as tabelas de explicação utilizando EXPLAIN.DDL sem executar o comando db2updv8, é possível que receba a seguinte mensagem de erro: DB21034E O comando foi processado como uma instrução SQL porque não era um comando válido do Processador de Linha de Comandos. Durante o processamento da SQL, ele retornou: SQL0440N Nenhuma rotina autorizada denominada "EXPLAIN_GET_MSG" do tipo "FUNCTION" possuindo argumentos compatíveis foi localizada. LINE NUMBER=26. SQLSTATE=42884 Migrando o XML Extender de Versões Anteriores Se estiver utilizando uma versão anterior do DB2 XML Extender, você deve migrar cada banco de dados que estiver ativo para o XML Extender antes de utilizar um banco de dados existente ativado para XML com o release atualizado do XML Extender. Todo fixpak novo contém todas as atualizações dos fixpaks anteriores. Antes de executar o programa de migração, crie um backup do banco de dados. Para migrar um banco de dados ativado do XML e as colunas ativadas do XML, complete as etapas a seguir. 1. Na Linha de Comandos do DB2, digite: db2 connect to database_name db2 bind dxxinstall/bnd/@dxxMigv.lst db2 bind dxxinstall/bnd/@dxxbind.lst onde dxxinstall é o caminho de diretório no qual você instalou o DB2 Universal Database. 2. Na Linha de Comandos do DB2, digite: dxxMigv database_name Migrando o DB2 Universal Database ao Utilizar o DataJoiner ou Replicação Se você desejar migrar uma instância do DataJoiner ou do DB2 UDB (Universal Database) para Linux, UNIX e Windows no qual está executando os programas Capture ou Apply para replicação do DB2 UDB, você deverá se preparar para migrar seu ambiente de replicação antes de migrar a instância do DB2 UDB ou do DataJoiner. Instruções detalhadas sobre como executar a preparação requerida estão incluídas na documentação de migração para o DB2 DataPropagator, Versão 8. Você pode localizar a documentação de migração para o DB2 DataPropagator, Versão 8 em http://www.ibm.com/software/data/dpropr/. Migrando o DB2 Universal Database (Windows) As etapas a seguir mostram a ordem correta para os pré-requisitos de migração para o DB2 UDB (Universal Database) no Windows. Pré-requisitos Antes de migrar: 1. Reveja as recomendações de migração, restrições e recomendações de espaço. 2. Registre as definições de configuração antes da migração do DB2 UDB. 3. Altere o nível de erro de diagnóstico. 4. Verifique se os bancos de dados estão prontos para a migração do DB2 UDB. 5. Faça backup de seus bancos de dados. 6. Se estiver utilizando replicação, você deverá arquivar todos os arquivos de registro do DB2 UDB. 7. Você deve ter autoridade SYSADM. 8. O servidor DB2 deve estar off-line para a migração do DB2 UDB. Nota: A partir da Versão 8.1, a variável de registro DB2_HASH_JOIN estará ATIVA por padrão. Consulte a subseção "Administração: Desempenho" na seção "Atualizações da Documentação" para obter detalhes. Migrando um Banco de Dados do DB2 Versão 8 Windows de 32 Bits para o Windows de 64 Bits Este tópico lista as etapas para migrar seu banco de dados de 32 bits do DB2 Versão 8 em um computador de 32 bits para um banco de dados de 64 bits em um sistema operacional Windows de 64 bits. Pré-requisitos * Uma versão de 64 bits do DB2 Versão 8 deve ser instalada no computador de 64 bits. * Certifique-se de que seu sistema Windows de 32 bits esteja executando o DB2 Versão 8. Procedimento Para migrar para o DB2 Versão 8 no Windows de 64 bits: 1. Faça backup dos bancos de dados do DB2 Versão 8 no sistema Windows de 32 bits. 2. Restaure o backup do DB2 Versão 8 (criado na etapa #1) no sistema Windows de 64 bits. Nota: Além de migrar o DB2 UDB de sistemas de 32 bits para sistemas de 64 bits, as migrações a seguir também são possíveis: * Migrando entre versões do Windows * Migrando entre versões do DB2 UDB * Migrando tudo de uma só vez * Migrando de volta para 32 bits Informações detalhadas estão disponíveis no seguinte IBM Redbook: Scaling DB2 UDB on Windows Server 2003. Este Redbook pode ser localizado na seguinte URL: http://publib-b.boulder.ibm.com/Redbooks.nsf/RedbookAbstracts/sg247019.html Migrando para o DB2 UDB Versão 8.2.2 a partir da Versão 7 em um Ambiente MSCS Este tópico descreve como migrar do DB2 UDB (Universal Database(TM)) Versão 7 para o DB2 UDB Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) em um ambiente MSCS (Microsoft Cluster Server). Suposições: Uma configuração de amostra será utilizada para ilustrar como migrar para o DB2 UDB Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) em um ambiente MSCS. Nessa configuração de amostra, há dois computadores Windows Server 2000 com o DB2 UDB Enterprise Server Edition Versão 7. A configuração inicial é uma instância do DB2, contendo duas partições. Além disso, existem dois Grupos de Cluster: * DB2 Grupo 0: contém Partição 0 ativa no computador A. O DAS (Administration Server) também está localizado aqui. * DB2 Grupo 1: contém Partição 1 ativa no computador B. Pré-requisito Antes de iniciar a migração, faça backup do banco de dados. Procedimento Para migrar do DB2 UDB Versão 7 para a Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) em um ambiente MSCS: 1. Desative o retorno de falha automático. Durante o processo de instalação talvez seja necessário reiniciar seu computador. Quando isso acontece o serviço de cluster inicia novamente automaticamente. Portanto, o retorno de falha automático deve estar desligado para que nenhum dos grupos falhe automaticamente. a. Para desativar o retorno de falha automático no DB2 Grupo 0: 1) Na janela Administrador de Cluster, clique com o botão direito em DB2 Grupo 0. 2) Selecione Propriedades. A janela Propriedades do DB2 Grupo 0 é aberta. 3) Na guia Retorno de Falha, selecione o botão de opções Prevenir retorno de falha. 4) Dê um clique em OK. b. Para desativar o retorno de falha automático no DB2 Grupo 1: 1) Na janela Administrador de Cluster, clique com o botão direito em DB2 Grupo 1. 2) Selecione Propriedades. A janela Propriedades do DB2 Grupo 1 é aberta. 3) Na guia Retorno de Falha, selecione o botão de opções Prevenir retorno de falha. 4) Dê um clique em OK. 2. Mova o DB2 Grupo 1 para o computador A. a. A partir da GUI do Administrador de Cluster, clique em DB2 Grupo 1. b. Clique com o botão direito, selecione Mover Grupo. A coluna Proprietário é alterada para o computador A. 3. Pare o serviço de cluster no computador B. a. A partir da janela Serviços de Componentes, clique com o botão direito em Serviços do Cluster. b. Clique em Parar. 4. Faça download e instale o DB2 UDB Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) no computador B. Nota: * O DB2 UDB está sendo executado e está disponível no computador A. * Como parte do processo de instalação, você será solicitado a executar o comando db2imigr para migrar as instâncias do DB2 nesse computador. Ao executar db2imigr, talvez seja necessário reiniciar o computador. 5. Leve os recursos DB2 no computador A off-line. a. Partição 0, Partição 1 e o DAS são todos recursos no computador A. Estes recursos devem ser colocados em off-line um de cada vez. Para colocar os recursos do computador A off-line: 1) A partir da janela Administrador de Cluster, no painel da janela à esquerda, selecione Grupos. 2) Selecione DB2 Grupo 0. Os recursos para o grupo são exibidos no painel da janela à direita. * Para DB2 Grupo 0, os recursos do DB2 incluem Partição 0 e o DAS. 3) No painel da janela à direita, clique com o botão direito em um dos recursos e selecione Colocar Off-Line. * Repita esta etapa para cada um dos recursos do DB2 no DB2 Grupo 0. 4) Selecione DB2 Grupo 1. Os recursos para o grupo são exibidos no painel da janela à direita. * Para DB2 Grupo 1, os recursos do DB2 incluem Partição 1. 5) No painel da janela à direita, clique com o botão direito no recurso (Partição 1) e selecione Colocar Off-Line. 6. Inicie o serviço de cluster no computador B. Se a instalação solicitar que o computador seja reiniciado e se o Tipo de Reinicialização para o serviço de cluster for definido como automático, ignore esta etapa, pois o serviço de cluster já está iniciado. Para iniciar o serviço de cluster: a. A partir da janela Serviços de Componentes, clique com o botão direito em Serviços do Cluster. b. Clique em Iniciar. 7. Mova o DB2 Grupo 0 e o DB2 Grupo 1 para o computador B. a. A partir da janela Administrador de Cluster, clique em DB2 Grupo 0. b. Clique com o botão direito, selecione Mover Grupo. A coluna Proprietário é alterada para o computador B. c. Clique em DB2 Grupo 1. d. Clique com o botão direito, selecione Mover Grupo. A coluna Proprietário é alterada para o computador B. 8. Coloque os recursos DB2 no computador B on-line. a. Partição 0, Partição 1 e o DAS são agora recursos no computador B. Estes recursos devem ser colocados em on-line um de cada vez. Para colocar esses recursos on-line: 1) A partir da janela Administrador de Cluster, no painel da janela à esquerda, selecione Grupos. 2) Selecione DB2 Grupo 0. Os recursos para o grupo são exibidos no painel da janela à direita. * Para DB2 Grupo 0, os recursos do DB2 incluem Partição 0 e o DAS. 3) No painel da janela à direita, clique com o botão direito em um dos recursos, e Colocar On-line. * Repita esta etapa para cada um dos recursos do DB2 no DB2 Grupo 0. 4) Selecione DB2 Grupo 1. Os recursos para o grupo são exibidos no painel da janela à direita. * Para DB2 Grupo 1, os recursos do DB2 incluem Partição 1. 5) No painel à direita, clique com o botão direito no recurso (Partição 1) e selecione Colocar On-line. b. Migre todas as instâncias do DB2 e todos os bancos de dados do DB2. 1) Migre todas as instâncias do DB2 utilizando o comando db2imigr: a) Para localizar todas as instâncias do DB2, execute o comando db2ilist. b) Para migrar cada instância do DB2, execute o comando db2imigr. Este comando está localizado no diretório sqllib\bin e deve ser executado para cada instância do DB2. 2) Migre todos os bancos de dados do DB2 utilizando o comando migrate database. 9. Pare o serviço de cluster no computador A. a. A partir da janela Serviços de Componentes, clique com o botão direito em Serviços do Cluster. b. Clique em Parar. 10. Faça download e instale o DB2 UDB Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) no computador A. Nota: * O DB2 está sendo executado e está disponível no computador A. * Como parte do processo de instalação, talvez seja necessário iniciar novamente o seu computador. * Não é necessário executar os comandos db2imigr e migrate database no computador A, pois esses comandos já foram executados no computador B. 11. Inicie o serviço de cluster no computador A. Se a instalação solicitar que o computador seja reiniciado e se o Tipo de Reinicialização for definido como automático, ignore esta etapa, pois o serviço de cluster já está iniciado. Para iniciar o serviço de cluster: a. A partir da janela Serviços de Componentes, clique com o botão direito em Serviços do Cluster. b. Clique em Iniciar. 12. Mova o DB2 Grupo 0 para o computador A. a. A partir da janela Administrador de Cluster, clique em DB2 Grupo 0. b. Clique com o botão direito, selecione Mover Grupo. A coluna Proprietário é alterada para o computador A. Essa ação traz de volta o ambiente MSCS para a configuração inicial. 13. Se o retorno de falha automático estava desligado na Etapa 1, você deve ligá-lo. a. Para ativar o retorno de falha automático no DB2 Grupo 0: 1) Na janela GUI do Administrador de Cluster, clique com o botão direito em DB2 Grupo 0. 2) Selecione Propriedades. A janela Propriedades do DB2 Grupo 0 é aberta. 3) Na guia Retorno de Falha, selecione o botão de opções Permitir retorno de falha. 4) Dê um clique em OK. b. Para ativar o retorno de falha automático no DB2 Grupo 1: 1) Na janela Administrador de Cluster, clique com o botão direito em DB2 Grupo 1. 2) Selecione Propriedades. A janela Propriedades do DB2 Grupo 1 é aberta. 3) Na guia Retorno de Falha, selecione o botão de opções Permitir retorno de falha. 4) Dê um clique em OK. Migração do Banco de Dados (HP-UX no IA64) A migração do banco de dados não é suportada para o DB2 UDB (Universal Database) para HP-UX no IA64 nos releases da Versão 8.x. A restauração de uma imagem de backup do DB2 Versão 7 para uma instância Versão 8 não é suportada no DB2 UDB para HP-UX no IA64. Informações sobre Desinstalação Desinstalando o DB2 UDB Silenciosamente (Windows) Para remover produtos DB2 silenciosamente utilizando o comando msiexec: msiexec /x /qn em que representa o código do produto que você deseja remover. A seguir é apresentada uma lista dos códigos de produtos DB2: DB2 Universal Database ESE (Enterprise Server Edition) {D8F53726-C7AD-11D4-9155-00203586D551} DB2 Universal Database WSE (Workgroup Server Edition) {7A28F948-4945-4BD1-ACC2-ADC081C24830} DB2 Universal Database EXP (Express Edition) {58169F10-CA30-4F40-8C6D-C6DA8CE47E16} DB2 Universal Database PE (Personal Edition) {C0AA883A-72AE-495F-9601-49F2EB154E93} DB2 WM (Warehouse Manager) {84AF5B86-19F9-4396-8D99-11CD91E81724} DB2 DLM (Data Links Manager) {1D16CA65-F7D9-47E5-BB26-C623A44832A3} RCON (Relational Connect) {273F8AB8-C84B-4EE6-85E7-D7C5270A6D08} DB2 CEE (Connect Enterprise Edition) {9C8DFB63-66DE-4299-AC6B-37D799A728A2} DB2 CPE (Connect Personal Edition) {F1912044-6E08-431E-9B6D-90ED10C0B739} DB2 ADMCL (Administration Client) {ABD23811-AA8F-416B-9EF6-E54D62F21A49} DB2 ADCL (Application Development Client) {68A40485-7F7F-4A91-9AB6-D67836E15CF2} DB2 RTCL (Run-Time Client) {63F6DCD6-0D5C-4A07-B27C-3AE3E809D6E0} DB2 7 (RTLITE) {07C9CEE7-4529-4E60-95D3-6B6EF6AC0E81} DB2 DOCE (Eclipse Documentation) {FE2D4758-041C-4E4E-95B3-529E4E1EAF3E} DB2 QP (Query Patroller) {7A8BE511-8DF3-4F22-B61A-AF0B8755E354} LSDC (Life Sciences Data Connect) {DD30AEB3-4323-40D7-AB39-735A0523DEF3} DB2 Cube Views(TM) (CUBE) {C8FEDF8F-84E8-442F-A084-0A0F6A772B52} DB2 SE (Spatial Extender) {F6846BF9-F4B5-4BB2-946D-3926795D5749} Exemplo Se desejar remover o DB2 UDB Enterprise Edition, digite o comando a seguir msiexec /x {D8F53726-C7AD-11D4-9155-00203586D551} /qn Os códigos de produtos DB2 a seguir não são mais suportados no DB2 UDB Versão 8.2: * WMC {5FEA5040-22E2-4760-A88C-73DE82BE4B6E} * DOC {73D99978-A255-4150-B4FD-194ECF4B3D7C} Código do Produto para Remoção do Centro de Informações do DB2 Utilizando uma Desinstalação Silenciosa (Windows) Ao remover o Centro de Informações do DB2 utilizando uma desinstalação silenciosa no Windows, utilize o seguinte código do produto: {FE2D4758-041C-4E4E-95B3-529E4E1EAF3E} Limitações, Problemas e Soluções Alternativas Conhecidas As informações a seguir são as limitações, problemas e soluções alternativas conhecidas, que aplicam-se somente a esse release. Quaisquer limitações e restrições podem ou não se aplicar a outros releases do produto. O Web site de Suporte para DB2 também contém technotes e atualizações de serviço que descrevem alterações para a documentação e percebem limitações e situações alternativas descobertas após esse documento ser criado. O endereço do Web site de Suporte para DB2 é http://www.ibm.com/software/data/db2/udb/support.html. Marcas de revisão indicam texto que foi incluído ou alterado. Uma barra vertical ( | ) indica informações que foram incluídas ou alteradas para a Versão 8.2 FixPak 4 (equivalente à Versão 8.1 FixPak 11). Limitações db2look - Limitação para Espaço de Tabelas de Armazenamento Automático Com bancos de dados utilizando um espaço de tabelas de armazenamento automático, o comando db2look será concluído com êxito. No entanto, ele não mostrará informações do espaço de tabelas específicas para espaços de tabelas de armazenamento automático. A Função da Tabela SNAP_GET_DB Retorna Resultados Incompletos Quando chamado em um ambiente DPF (Database Partitioning Feature) com -2 (captura instantânea global) fornecido como entrada, a função da tabela SNAP_GET_DB retorna resultados incompletos para as quatro colunas a seguir: * FIRST_ACTIVE_LOG * LAST_ACTIVE_LOG * CURRENT_ACTIVE_LOG * CURRENT_ARCHIVE_LOG Esses elementos não podem ser agregados para uma captura instantânea global. Para recuperar o conjunto completo de valores para esses elementos de captura instantânea, a função da tabela SNAP_GET_DB não pode ser chamada individualmente em cada partição. IMPORT REPLACE Não Considera a Cláusula Not Logged Initially A opção REPLACE do comando IMPORT não considera a cláusula NLI (NOT LOGGED INITIALLY) da instrução CREATE TABLE ou a cláusula ACTIVATE NOT LOGGED INITIALLY da instrução ALTER TABLE. Se for executada uma importação com a opção REPLACE na mesma transação que uma instrução CREATE TABLE ou ALTER TABLE na qual a cláusula NLI é chamada, a importação não considerará a cláusula NLI. Todas as inserções serão registradas. Solução Alternativa 1 Exclua o conteúdo da tabela utilizando a instrução DELETE e, em seguida, chame a importação com a instrução INSERT. Solução Alternativa 2 Elimine a tabela e recrie-a chamando, em seguida, a importação com a instrução INSERT. Esta limitação aplica-se ao DB2 UDB Versão 7 e ao DB2 UDB Versão 8. Campo Longo e Dados LOB Não Podem Ser Reorganizados com a Reorganização de Tabela Local Durante a reorganização de tabela local ou on-line, campo longo e dados LOB não podem ser reorganizados. Eles podem ser reorganizados com uma reorganização de tabela clássica ou off-line, especificando o parâmetro LONGLOBDATA com o comando REORG TABLE. Porém, é necessário observar que enquanto a reorganização de campo longo e dados de LOB permitir espaços livres a serem solicitados, ela não irá aprimorar o armazenamento em cluster e poderá aumentar significativamente o tempo requerido para completar a reorganização. Comportamento de Bloqueio em Cursores de Bloqueamento Pode Parecer Inconsistente nos Aplicativos Cliente No isolamento do CS (Cursor Stability), a linha associada à posição do cursor atual no servidor de banco de dados está sempre bloqueada. Durante uma busca bloqueada, as linhas múltiplas podem ser retornadas em um buffer único. Na maioria dos casos, a última linha processada no lado do servidor não se ajustará exatamente e será dividida entre dois buffers. O aplicativo não verá essa linha dividida até que o segundo buffer seja recebido. Porém, nenhuma dessas linhas retornadas ao aplicativo será bloqueada. Em alguns casos raros, a última linha processada no lado do servidor ajusta-se exatamente, a posição do cursor permanecerá na última linha de dentro do buffer, o que significa que a última linha retornada ao aplicativo será bloqueada. Exportação de Dados com ODBC para Programa de Warehouse do Arquivo A Exportação de dados com ODBC para o programa de warehouse do arquivo não suporta os seguintes tipos de dados Sybase: * BIT * BINARY * VARBINARY Tipos de Dados que Não São Suportados no Depurador SQL Integrado do Development Center Os tipos de dados a seguir não são suportados no Depurador SQL que é integrado ao Development Center: * Para o DB2 UDB (Universal Database) para Linux, UNIX, e Windows, os tipos de dados CHAR FOR BIT DATA,VARCHAR FOR BIT DATA e GRAPHIC não são suportados. * Para o DB2 UDB para z/OS, o tipo de dados GRAPHIC não é suportado e os tipos de dados BLOB e CLOB, utilizados como parâmetros, não são suportados. BLOB e CLOB utilizados como variáveis locais são suportados. Tipos Estruturados no Development Center O Development Center não suporta mais a criação de tipos estruturados. Limitações do Development Center para Sistemas Operacionais de 64 Bits A depuração de procedimentos armazenados Java em um servidor de 64 bits não é suportada pelo Development Center. A depuração de procedimentos armazenados SQL é suportada em sistemas operacionais Windows de 64 bits. O desenvolvimento do OLE DB ou do XML User Defined Functions não é suportado para servidores de 64 bits. Development Center (Linux) Não é possível utilizar o Development Center para depurar procedimentos armazenados Java em execução em qualquer uma das distribuições Linux (32 bits, 64 bits, Intel, zSeries ou iSeries). Depurando Procedimentos Armazenados com Aspas Duplas O Development Center não suporta a depuração de nenhum procedimento armazenado com aspas duplas (") no nome do procedimento armazenado, esquema ou nome específico. Configurações de Caminho Necessárias para Ativar Rotinas Java para Compilação no Development Center O Development Center não pode compilar rotinas Java a não ser que ele saiba onde as versões do Developer Kit estão instaladas. Os diretórios padrão para as versões do kit do desenvolvedor são gravados no arquivo $HOME/.ibm/db2/dc/DB2DC.settings quando o Development Center é iniciado pela primeira vez. Você poderá copiar esses diretórios no arquivo $USER.settings e modificá-los com um editor Unicode ou poderá criar links simbólicos nos diretórios do kit do desenvolvedor nas localizações padrão. Limitações do Development Center para Executar e Depurar Procedimentos Armazenados Java Simultaneamente O Development Center não suporta a execução e a depuração de procedimentos armazenados Java simultaneamente. No Development Center, você pode executar vários procedimentos armazenados Java ao mesmo tempo ou depurar um único procedimento armazenado Java; você não pode executar um procedimento armazenado Java enquanto depura outro procedimento armazenado Java. Por padrão, a palavra-chave de configuração do gerente do banco de dados KEEPFENCED está definida como KEEPFENCED=YES como requerida para a depuração de procedimentos armazenados SQL. Quando a palavra-chave KEEPFENCED tiver o valor padrão YES, o processo de rotina é mantido ativo e ocorrerão conflitos com a porta da JVM. Os procedimentos armazenados Java causarão uma exceção JVM e falharão em qualquer uma das circunstâncias a seguir quando a definição de configuração padrão do gerenciador de banco de dados KEEPFENCED=YES for utilizada: * Construindo um procedimento armazenado Java no Development Center e, em seguida, depurando-o * Um usuário executando um procedimento armazenado Java e outro usuário depurando um procedimento armazenado Java enquanto o procedimento armazenado Java inicial ainda está em execução * Um usuário depurando um procedimento armazenado Java e outro usuário executando um procedimento armazenado Java enquanto o procedimento armazenado Java inicial está sendo depurado Para solucionar esta limitação, assegure-se de que a palavra-chave da configuração do gerente do banco de dados KEEPFENCED esteja definida como KEEPFENCED=NO, executando os seguintes comandos: db2 update dbm cfg using KEEPFENCED NO db2stop db2start Quando KEEPFENCED estiver definido como NO, o processo db2fmp será encerrado quando uma chamada do procedimento armazenado Java for concluída e o DB2 Universal Database iniciará um novo processo db2fmp para manipular a próxima chamada de rotina. Isso assegura que não haverá nenhuma JVM no modo de depuração quando você iniciar a depuração de um procedimento armazenado Java. A definição de KEEPFENCED=YES é requerida para construir procedimentos armazenados SQL para depuração e para depurar procedimentos armazenados SQL. Quando KEEPFENCED=NO, você ainda poderá construir e executar procedimentos armazenados SQL mas não poderá depurá-los. O Método DB2SystemMonitor.getServerTimeMicros Não É Suportado O método do DB2(R) Universal JDBC DriverDB2SystemMonitor.getServerTimeMicros() não é suportado atualmente pelo DB2(R) Universal Database(TM) para servidores Linux(TM), UNIX(R) e Windows(R). O método DB2SystemMonitor.getServerTimeMicros() retorna 0 ao conectar-se ao DB2(R) Universal Database(TM) para servidores Linux, UNIX e Windows(R). Tempo de Execução do Compilador IBM XL C/C++ Deve Estar Instalado (Linux em Sistemas iSeries e pSeries, 64 bits) Os seguintes requisitos devem ser atendidos antes da instalação do DB2 de 64 bits para sistemas Linux iSeries(TM) e pSeries(R): * É necessário estar em execução no hardware do iSeries(TM) ou pSeries(R) suportado pela distribuição Linux. * Você deve estar executando uma das seguintes distribuições: * SLES (SUSE LINUX Enterprise Server) 9 ou * Red Hat Enterprise Linux 3 Update 3 (Taroon) * Você deve realizar o download e a instalação do IBM(R) XL C/C++ Advanced Edition V7.0 for Linux Run-Time Environment Component. Para obter informações adicionais, consulte http://www.ibm.com/support/docview.wss?uid=swg24007906 ou siga estas etapas: 1. Visite a página de suporte do XL C/C++ em http://www.ibm.com/software/awdtools/xlcpp/support/ 2. Sob o título "Self Help: Download", selecione "Latest Updates (PTFs)" 3. Sob o título "Linux", selecione "XL C/C++ Advanced Edition V7.0 for Linux Run-Time Environment" 4. Siga as instruções da página "XL C/C++ Advanced Edition V7.0 for Linux Run-Time Environment". Universal JDBC Driver Tipo 2 Não É Suportado no DB2 UDB Versão 8.2.2 (Linux AMD64 ) O DB2 UDB (Universal Database(TM)) Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) no Linux AMD64 não suporta o Universal JDBC Driver Tipo 2. O suporte será planejado para um futuro fixpak. O suporte ao JDBC na Versão 8.2.2 está disponível utilizando o Universal JDBC Driver Type 4 e o driver Legacy JDBC Tipo 2 (COM.ibm.db2.jdbc.app.DB2Driver). Cursores em Aplicativos PHP Quando o interpretador PHP cria um cursor em nome de um aplicativo, ele é criado por padrão como um cursor orientado para Conjunto de Chaves Rolável. Em alguns casos, isto pode causar o retorno de resultados inesperados. Para evitar esta situação, especifique explicitamente a cláusula "FOR READ ONLY" para todas as instruções SELECT que são utilizadas para atualizar dados. Outras alternativas incluem a definição dos Parâmetros de Configuração de CLI "Patch2=6", "Patch2=42" ou "DisableKeysetCursor=1". No entanto, cada um deles pode ter outras conseqüências. Consulte a documentação Guia e Referência de CLI para obter detalhes sobre estas palavras-chave de configuração. Limitação da Palavra-chave ConnectNode para Configuração do CLI/ODBC A palavra-chave ConnectNode não afeta o Centro de Controle. O Centro de Controle sempre se conecta ao nó de catálogo relacionado à configuração do SQL_CONN_CATALOG_NODE. Restrição da Função SQLColumns (CLI) A função SQLColumns() não suporta dados retornados de alias para alias. Ao ser chamado de um alias para outro alias, a função SQLColumns() retorna um conjunto de resultado vazio. Limitações de Opções de Ligação para Pacotes CLI Algumas opções de ligação não entram em vigor durante a ligação de pacotes CLI com qualquer um dos seguintes arquivos da lista: db2cli.lst, ddcsmvs.lst, ddcs400.lst, ddcsvm.lst ou ddcsvse.lst. Como os pacotes CLI são utilizados pelos aplicativos CLI, ODBC, JDBC, OLE DB, .NET e ADO, as alterações feitas nos pacotes CLI afetam todos os aplicativos destes tipos. Portanto, apenas um subconjunto de opções de ligação é suportado, por padrão, durante a ligação de pacotes CLI. As opções suportadas são: ACTION, COLLECTION, CLIPKG, OWNER e REPLVER. Todas as demais opções de ligação que impactam os pacotes CLI são ignoradas. Para criar pacotes CLI com opções de ligação que não são suportadas por padrão, especifique a opção de ligação COLLECTION com um ID de coleta que seja diferente do ID de coleta padrão, NULLID. As opções de ligação especificadas são então aceitas. Por exemplo, para criar pacotes CLI com a opção de ligação KEEPDYNAMIC YES que, por padrão, não é suportada, emita o seguinte comando: db2 bind @db2cli.lst collection newcolid keepdynamic yes Para que os aplicativos CLI/ODBC acessem os pacotes CLI criados na nova coleta, defina a palavra-chave CurrentPackageSet CLI/ODBC no arquivo de inicialização db2cli.ini como o novo ID de coleta. Para sobrescrever pacotes CLI já existentes em um determinado ID de coleta, execute qualquer uma das seguintes ações: * Elimine o pacote CLI existente antes de emitir o comando de ligação para este ID de coleta * Especifique a opção de ligação ACTION REPLACE ao emitir o comando de ligação Restrições a Utilitários CLI LOAD O utilitário CLI LOAD não suporta marcadores de parâmetros se a instrução SQL preparada para a inserção de dados contiver uma cláusula SELECT. Anterior à Versão 8.2 FixPak 3 (equivalente à V8.1 Fixpak 10), o utilitário CLI LOAD não permitia que colunas de destino fossem especificadas se a instrução INSERT incluísse uma cláusula VALUES. Porém, iniciando com a Versão 8.2 FixPak 3 (equivalente à V8.1 Fixpak 10), o utilitário CLI LOAD permite que colunas de destinos sejam especificadas em uma instrução INSERT com uma cláusula VALUES. Por exemplo, a seguinte instrução é, agora, suportada por CLI LOAD: INSERT into tableA (col1, col2, col3) VALUES (?, ?, ?) Criação do Banco de Dados do Catálogo de Ferramentas Não Suportada (Linux para AMD64) A criação do banco de dados do catálogo de ferramentas em uma instância do DB2 UDB (Universal Database) de 64 bits no Linux (AMD64) não é suportada. Não tente criar o catálogo de ferramentas em uma instância de 64 bits utilizando quaisquer dos métodos a seguir: * Instalando o DB2 UDB * Atualizando uma instância de 64 bits utilizando o comando db2isetup * Emitindo o comando CREATE TOOLS CATALOG do Processador da Linha de Comandos após o término da instalação. A criação do banco de dados do catálogo de ferramentas em uma instância de 32 bits no Linux (AMD64) é suportada a partir da Versão 8.1.4. Criação do Banco de Dados do Catálogo de Ferramentas Não Suportada (AIX, Solaris Operating Environments e HP-UX) A criação do catálogo de ferramentas não é suportada durante a instalação do DB2 UDB (Universal Database) em instâncias de 64 bits nas plataformas híbridas de 64 bits. As plataformas híbridas são: * AIX * Solaris Operating Environments * HP-UX * Outras plataformas que suportam tanto a instância de 32 bits quanto a de 64 bits Se você desejar criar um catálogo de ferramentas em uma instância de 64 bits, isso poderá ser feito depois da instalação do DB2 UDB através do Processador da Linha de Comandos utilizando o comando CREATE TOOLS CATALOG CLP ou utilizando o Centro de Controle. Será necessário também instalar um IBM Developer Kit para Java de 64 bits para esta operação. Consulte a seção DB2 Administration Server do DB2 Administration Guide para obter detalhes adicionais. Limitações de Memória para o DB2 UDB Express e DB2 Workgroup Server Edition V8.2 Há limitações de memória para os seguintes produtos: * IBM DB2 UDB (Universal Database) Express Edition (Opção do usuário denominado). O máximo de memória por servidor é 4 GB. * IBM DB2 UDB Express Edition (opção de CPU). O máximo de memória por servidor é 4 GB. * IBM DB2 UDB Workgroup Server Edition. O máximo de memória por servidor é de 16 GB. * IBM DB2 UDB Workgroup Server Unlimited Edition. O máximo de memória por servidor é de 16 GB. Agendando um Processo do Warehouse a Ser Executado em Intervalos Ao agendar um processo de armazenamento para ser executado em intervalos, você deve determinar o tempo mais longo que leva para executar todas as etapas de produção do processo e agendar os intervalos de acordo. Se um processo exceder o intervalo de tempo agendado, todas as ocorrências agendadas subseqüentemente ao processo não serão executadas e não serão agendadas novamente. Limitações do Suporte SNA na Versão 8 O suporte a seguir foi retirado do DB2 UDB (Universal Database) ESE (Enterprise Server Edition) Versão 8 para sistemas operacionais Windows e UNIX e do DB2 CEE (Connect Enterprise Edition) Versão 8 para sistemas operacionais Windows e UNIX: * A capacidade de atualização de vários sites (consolidação de duas fases) utilizando o SNA não pode ser utilizada. Os aplicativos que requerem a atualização de vários sites (consolidação de duas fases) devem utilizar a conectividade TCP/IP. A atualização de vários sites (consolidação de duas fases) utilizando TCP/IP para um host ou servidor de banco de dados do iSeries esteve disponível em vários releases. Os aplicativos do host ou do iSeries que requerem suporte à atualização de vários sites (consolidação de duas fases) podem utilizar o novo recurso do suporte de atualização de vários sites (consolidação de duas fases) do TCP/IP dentro do DB2 UDB ESE, Versão 8. * Os servidores DB2 UDB ESE ou DB2 CEE não aceitam mais conexões de clientes utilizando o SNA. A partir da Versão 8, FixPak 1, o DB2 UDB permite que a versão de 32 bits dos aplicativos AIX, Solaris Operating Environment, HP-UX e Windows acessem servidores de banco de dados do host ou do iSeries utilizando o SNA. Esse suporte permite que os aplicativos acessem servidores do host ou de banco de dados do iSeries utilizando o SNA, mas utilizando apenas consolidação de uma fase. * O suporte a Sysplex com o DB2 UDB para z/OS está disponível apenas utilizando o TCP/IP. O suporte a Sysplex não é fornecido utilizando a conectividade SNA. * O suporte para alteração de senha não está mais disponível com a conectividade SNA aos servidores do banco de dados do host. * Todo o suporte a SNA será retirado na próxima versão do DB2 UDB e do DB2 Connect. Problema e Restrição do Plug-in de Segurança para Clientes do DB2 UDB (Windows) Ao desenvolver plug-ins de segurança que serão implementados em clientes do DB2 em sistemas operacionais Windows, não descarregue nenhuma biblioteca auxiliar na função de encerramento do plug-in. Esta restrição se aplica a todos os tipos de plug-ins de segurança de cliente, incluindo plug-ins de grupo, ID de usuário e senha, Kerberos e GSS-API. Essa restrição é causada pelo problema do DB2 Universal Database ao descarregar plug-ins de segurança em clientes do DB2 em sistemas operacionais Windows. Defeitos ao Relatar um Login Bem-sucedido durante uma Tentativa de Conexão (AIX) Ao utilizar a autenticação de S.O. no AIX, o DB2 UDB (Universal Database) tenta relatar um login bem-sucedido para o AIX na autenticação bem-sucedida durante uma tentativa de conexão. Antes da Versão 8 FixPak 5, se o DB2 UDB não conseguisse relatar um login bem-sucedido, a conexão falharia apesar do usuário ser autenticado. A partir da Versão 8 FixPak 5, a conexão tem permissão para continuar e o defeito é registrado no arquivo db2diag.log. ID de Usuário com Duas Partes Não Suportado (Windows ME) O ID de usuário com duas partes para a instrução CONNECT e o comando ATTACH, como domainname\username, não é suportado no Windows ME. A Página Carregar e Importar Colunas Não Suporta Caracteres DBCS nos Arquivos IXF Se você utilizar o Assistente para Carregar ou o Bloco de Notas Importar para configurar um carregamento ou importação a partir de um arquivo de entrada IXF contendo caracteres DBCS, a página Colunas não exibirá corretamente os nomes de colunas contidos no arquivo. Ferramentas GUI para Sistemas Operacionais Linux em AMD64 As ferramentas GUI que acompanham o DB2 UDB (Universal Database) são utilitários gráficos baseados em Java-. Exemplos de ferramentas GUI para DB2 UDB são: * Centro de Controle * Information Center * Assistente de Configuração * Centro de Desenvolvimento Já que os sistemas operacionais Linux em AMD64 não possuem atualmente um Java(TM) SDK de 64 bits ou Ambiente de Tempo de Execução em execução, essas ferramentas requerem que você o faça a partir da instância DB2 UDB de 32 bits. É possível continuar a utilizar essas ferramentas para gerenciar banco de dados em instâncias de 64 bits local e remotas. Por exemplo, para utilizar o Centro de Controle, você precisa primeiro criar uma instância de 32 bits. Após a instância de 32 bits ser criada, é necessário catalogar manualmente a instância local de 64 bits que você deseja administrar. Podem ser localizadas informações adicionais relacionadas ao DB2 para o Linux em AMD64 na seguinte URL: ftp://ftp.software.ibm.com/software/data/pubs/papers/linuxamd64.pdf Configurações Mínimas de Exibição para Ferramentas da GUI Para que as ferramentas da GUI, tais como Centro de Controle, funcionarem corretamente, você deve ter uma resolução de tela de pelo menos 800 por 600 dpi e deve utilizar uma paleta de exibição de pelo menos 32 cores. Exibição Incorreta de Caracteres GB18030 na Barra de Título de uma Janela Se você tiver caracteres do padrão de codificação chinês GB18030 na barra de título de uma janela, eles podem aparecer como pontos de interrogação ou quadrados. Não Particionar Tabelas do Centro de Catálogo de Informações As tabelas que o Information Catalog Manager utiliza devem estar em uma única partição de banco de dados. Diversos métodos estão disponíveis para colocar as tabelas em uma única partição. O procedimento a seguir é uma abordagem que funciona. 1. Abra um Processador da Linha de Comandos do DB2 e emita esses comandos: a. CREATE DATABASE PARTITION GROUP partition_group_name ON DBPARTITIONNUM partition_number b. CREATE REGULAR TABLESPACE tablespace_name IN DATABASE PARTITION GROUP partition_group_name MANAGED BY SYSTEM USING ('cname') onde partition_group_name é o mesmo em ambos os comandos. 2. Clique em Iniciar -> Programas -> IBM DB2 -> Ferramentas de Configuração -> Assistente Gerenciar Catálogo de Informações. 3. Na página Opções, especifique o nome do espaço de tabelas no campo Espaço de Tabelas. Limitações do Query Patroller Quando DYN_QUERY_MGMT Está Desativado O Query Patroller não pode executar as seguintes ações se o parâmetro de configuração do banco de dados DYN_QUERY_MGMT estiver desativado: * Consultas sobre Release a partir de um estado de suspensão * Fazer uma consulta de execução ou enfileirada em segundo plano quando a consulta está em primeiro plano Se você tentar liberar uma consulta a partir do estado de suspensão ou alterar uma consulta em primeiro plano para uma consulta em segundo plano, quando DYN_QUERY_MGMT estiver definido para DISABLE, será exibida uma mensagem de erro e o estado da consulta não será alterado. Se as consultas suspensas estiverem planejadas para executar e DYN_QUERY_MGMT estiver desativado no momento em que iniciarem sua execução, será gravada uma mensagem de erro no arquivo qpdiag.log e as consultas serão deixadas em estado de suspensão. Tabelas de Resultados do Query Patroller Agora Utilizam o Esquema DB2QPRT A partir do FixPak 5, todas as novas tabelas de resultados são criadas no esquema DB2QPRT em vez do esquema do submissor. O privilégio DROPIN no esquema DB2QPRT é concedido a operadores cujos perfis foram criados antes da instalação do FixPak 5 e possuíam: * O privilégio MONITORING com autoridade de edição * O privilégio HISTORICAL ANALYSIS com autoridade de edição O privilégio DROPIN no esquema DB2QPRT é concedido na primeira vez que o Query Patroller cria uma tabela de resultados neste esquema. Aos operadores aos quais é concedido o privilégio MONITORING com autoridade de edição ou o privilégio HISTORICAL ANALYSIS com autoridade de edição após a instalação do FixPak 5, também é concedido o privilégio DROPIN no esquema DB2QPRT na criação ou atualização dos seus perfis. Restrições do Indicador de Funcionamento O monitor de funcionamento será incapaz de executar ações para o indicador de funcionamento db2.db2_op_status se o indicador informar o estado desativado. Esse estado pode ser causado, por exemplo, quando uma instância que o indicador está monitorando se torna inativa devido a um pedido de parada explícito ou a uma finalização anormal. Se desejar que a instância seja reiniciada automaticamente após uma finalização anormal, será necessário configurar o monitor com falha para manter a instância altamente disponível. Problemas e Soluções Alternativas Conhecidos Exportando para um Arquivo IXF com Índices em Colunas que Contenham Caracteres - e + Quando o comando export é emitido com um formato de arquivo IXF e uma cláusula SELECT *, a informação do índice é coletada, se aplicável. Problema Se os nomes da coluna especificados no índice contiverem caracteres - ou +, a informação do índice não será coletada e você receberá um código SQL SQL27984W. A exportação será concluída e os dados que estão sendo exportados não serão afetados. Porém, a informação do índice não será salva no arquivo IXF. Solução Alternativa Se você estiver recriando a tabela utilizando o comando import com o parâmetro CREATE, os índices não serão recriados. Para criar os índices separadamente, utilize o utilitário db2look . Erro CLI0116E ou SQL0428N ao Chamar o API db2ReadLog Problema Chamar o API db2ReadLog a partir de um aplicativo, pode resultar em erro quando o aplicativo desconectar do banco de dados, caso uma confirmação ou rollback não tiver sido desempenhado antes da desconexão: * Um erro CLI0116E pode ser gerado se o API db2ReadLog for chamado a partir de um aplicativo CLI. * Um erro SQL0428N pode ser gerado se o API db2ReadLog for chamado a partir de um aplicativo SQL incorporado gravado no C. Solução Alternativa 1 Para aplicativos não-incorporados, configure o modo de confirmação automática como on antes de chamar o API db2ReadLog. Solução Alternativa 2 Emita uma instrução COMMIT ou ROLLBACK após chamar o API db2ReadLog e antes de desconectar do banco de dados. Falha do Comando "db2gcf -k" no DB2 UDB Workgroup Server Edition Problema O comando db2gcf inicia, pára ou monitora uma instância do DB2 UDB (Universal Database), geralmente de um script automatizado, como em um cluster HA (High Availability). Utilizando o comando do sistema db2gcf com o parâmetro -k no DB2 UDB Workgroup Server falhará. Solução Alternativa O comando "db2gcf -k" funciona apenas no DB2 UDB Enterprise Server Edition e não no DB2 UDB Workgroup Server Edition. Erro SQL1224 do Wrapper DRDA (AIX) Se um servidor DB2 UDB (Universal Database) de 32 bits for executado em um sistema AIX e um aplicativo em execução no mesmo sistema tiver mais de uma conexão de banco de dados local através do wrapper DRDA, o aplicativo poderá obter o seguinte erro: SQL1822N Código de erro inesperado "-1224" recebido da origem de dados "W3_SERVER2". Associated text and tokens are func="DriverConnect" msg="SQL1224N Não foi possível iniciar um agente de banco de dados para servir um pedido ou foi finalizado como um resultado de um encerramento do sistema de banco de dados ou de um comando de força. " SQLSTATE=560BD Para evitar este erro, coloque a seguinte entrada no arquivo de configuração federado (instance_directory/cfg/db2dj.ini): EXTSHM=ON Nota: Quando você inclui entradas no arquivo de configuração federado, é necessário parar e reiniciar o DB2 UDB para que as alterações entrem em vigor. Como alternativa, é possível catalogar o banco de dados local do DB2 UDB como estando em um nó TCP/IP. Exemplo: CATALOG TCPIP NODE my_node REMOTE my_host SERVER 123; CATALOG DB mydb AT NODE my_node; CREATE WRAPPER drda; CREATE SERVER my_server TYPE DB2/UDB VERSION 8 WRAPPER drda AUTHORIZATION "my_id" PASSWORD "my_pw" OPTIONS(ADD DBNAME 'MYDB'); Teclas de Atalho Não Funcionando no Microsoft Visual Studio .NET Framework 1.1 Se suas teclas de atalho não estiverem funcionando no Microsoft Visual Studio .NET Framework 1.1, você poderá fazer download de um hotfix a partir do Web site da Microsoft. O hotfix pode ser localizado no Microsoft Knowledge Base, artigo Q836745. Código do Idioma Chinês Simplificado (AIX) O AIX alterou o conjunto de códigos ligado ao código do idioma chinês simplificado Zh_CN no: * AIX Versão 5.1.0000.0011 ou posterior * AIX Versão 5.1.0 com nível de manutenção 2 ou posterior O conjunto de códigos foi alterado de GBK (página de código 1386) para GB18030 (página de código 5488 ou 1392). Como o DB2 UDB (Universal Database) para AIX suporta o conjunto de códigos GBK nativamente e o conjunto de códigos GB18030 através do Unicode, o DB2 UDB padronizará o conjunto de códigos do código do idioma Zh_CN para ISO 8859-1 (página de códigos 819) e em algumas operações também padronizará o território do código do idioma para US (Estados Unidos). Para solucionar essa limitação, você tem duas opções: * Você pode substituir o conjunto de códigos do código de idioma de GB18030 para GBK e o território de US para China (cujo ID de território é CN e o código de território é 86). * Você pode utilizar um código de idioma de chinês simplificado diferente. Se você escolher utilizar a primeira opção, emita os seguintes comandos: db2set DB2CODEPAGE=1386 db2set DB2TERRITORY=86 db2 terminate db2stop db2start Se você optar por utilizar a segunda opção, altere o código de idioma de Zh_CN para ZH_CN ou zh_CN. O conjunto de códigos do código de idioma ZH_CN é Unicode (UTF-8), enquanto o conjunto de códigos do código de idioma zh_CN é eucCN (página de código 1383). Código do Idioma Chinês Simplificado (Red Hat Linux) O Red Hat Versão 8 e posterior (incluindo o Red Hat Enterprise Linux [RHEL] versões 2.1 e 3) alteraram o conjunto de códigos padrão para chinês simplificado de GBK (página de códigos 1386) para GB18030 (página de códigos 5488 ou 1392). Como o DB2 UDB (Universal Database) para Linux suporta o conjunto de códigos GBK nativamente e o conjunto de códigos GB18030 através do Unicode, o DB2 UDB padronizará seu conjunto de códigos para ISO 8859-1 (página de códigos 819) e em algumas operações padronizará também seu território para US (Estados Unidos). Para solucionar essa limitação, você tem duas opções: * Você pode substituir o conjunto de códigos padrão do Red Hat de GB18030 para GBK e o território de US para China (cujo ID de território é CN e o código de território é 86). * Você pode utilizar um código de idioma de chinês simplificado diferente. Se você escolher utilizar a primeira opção, emita os seguintes comandos: db2set DB2CODEPAGE=1386 db2set DB2TERRITORY=86 db2 terminate db2stop db2start Se você escolher utilizar a segunda opção, emita um dos seguintes comandos: export LANG=zh_CN.gbk export LANG=zh_CN export LANG=zh_CN.utf8 em que o conjunto de códigos associado ao zh_CN é eucCN ou página de código 1383 e, ao zh_CN.utf8, é a página de código 1208. Incompatibilidade do Merant Driver Manager (UNIX) Existem incompatibilidades com o suporte Unicode quando o Merant Driver Manager acessa o driver ODBC do DB2 no UNIX. Essas incompatibilidades fazem com que o Merant Driver Manager utilize o Unicode mesmo que o aplicativo não tenha solicitado o seu uso. Esta situação pode levar a problemas com produtos como o Centro de Data Warehouse, Gerenciador de Catálogos de Informações e MQSI, que requerem que o Merant Driver Manager suporte origens de dados não IBM. Você pode utilizar uma biblioteca alternativa do driver ODBC do DB2 sem suporte Unicode ativado até que uma solução permanente esteja disponível. Uma biblioteca alternativa do driver ODBC do DB2 sem suporte Unicode ativado é incluída com o DB2 UDB (Universal Database) Versão 8.1 para AIX, HP-UX e Solaris Operating Environment. Para utilizar essa biblioteca alternativa, você deve criar uma cópia dela, fornecendo à cópia o nome da biblioteca do driver ODBC do DB2 original. Nota: A biblioteca alternativa (_36) contém as funções Unicode requeridas pelo driver JDBC do DB2. Utilizar essa biblioteca permite que aplicativos JDBC, incluindo o WebSphere Application Server, funcionem corretamente com o DB2 UDB. Para mudar para a biblioteca ODBC não-Unicode no AIX, HP-UX ou Solaris Operating Environment, consulte as instruções a seguir. Como este é um processo manual, é necessário executá-lo sempre que atualizar seu produto, inclusive após a aplicação de FixPaks ou níveis de modificação sucessivos. Procedimento AIX Para criar a biblioteca alternativa no AIX: 1. Como proprietário da instância, encerre todas as instâncias do banco da dados utilizando o comando db2stop force. 2. Utilizando o ID de instância do DAS (DB2 Administration Server), encerre a instância do DAS utilizando o comando db2admin stop force. 3. Faça backup do arquivo db2.o original no diretório /usr/lpp/db2_81/lib. 4. Utilizando a autoridade raiz, emita o comando slibclean. 5. Copie db2_36.o para o arquivo de backup db2.o, assegurando que a propriedade e as permissões permaneçam compatíveis. Utilize os seguintes comandos: cp db2_36.o db2.o -r--r--r-- bin:bin for db2.o Para voltar para o objeto original, siga o mesmo procedimento utilizando o arquivo de backup em vez do db2_36.o. Solaris Operating Environment Para criar a biblioteca alternativa em um Solaris Operating Environment: 1. Como proprietário da instância, encerre todas as instâncias do banco da dados utilizando o comando db2stop force. 2. Utilizando o ID de instância do DAS (DB2 Administration Server), encerre a instância do DAS utilizando o comando db2admin stop force. 3. Faça backup do arquivo libdb2.so.1 original no diretório /opt/IBMdb2/V8.1/lib. 4. Copie o arquivo libdb2_36.so.1 no arquivo de backup libdb2.so.1, assegurando que a propriedade e as permissões permaneçam compatíveis. Utilize os seguintes comandos: cp libdb2_36.so.1 libdb2.so.1 -r-xr-xr-x bin:bin libdb2.so.1 5. Emita o comando db2iupdt para cada instância de banco de dados e o comando dasupdt para a instância DAS. Para voltar para o objeto original, siga o mesmo procedimento utilizando o arquivo de backup em vez do libdb2_36.so.1. HP-UX PA-RISC Para criar a biblioteca alternativa no HP-UX PA-RISC: 1. Encerre todas as instâncias de banco de dados utilizando o comando db2stop force. 2. Encerre a instância do DAS (DB2 Administration Server) utilizando o comando db2admin stop force. 3. Faça backup do arquivo libdb2.sl original no diretório /opt/IBMdb2/V8.1/lib. 4. Copie o arquivo libdb2_36.sl para o arquivo de backup libdb2.sl, assegurando que a propriedade e permissões permaneçam consistentes. Utilize o seguinte comando para garantir a consistência: cp libdb2_36.sl libdb2.sl -r-xr-xr-x bin:bin for libdb2.sl 5. Emita o comando db2iupdt para cada instância de banco de dados e o comando dasupdt para a instância DAS. Para voltar para o objeto original, siga o mesmo procedimento utilizando o arquivo de backup em vez do libdb2_36.sl. HP-UX no IA64 Para criar a biblioteca alternativa no HP-UX no IA64: 1. Encerre todas as instâncias de banco de dados utilizando o comando db2stop force. 2. Encerre a instância do DAS (DB2 Administration Server) utilizando o comando db2admin stop force. 3. Faça backup do arquivo original libdb2.so no diretório /opt/IBMdb2/V8.1/lib. 4. Copie o arquivo libdb2_36.so para o arquivo de backup libdb2.so, assegurando que a propriedade e permissões permaneçam consistentes. Utilize o seguinte comando para garantir a consistência: cp libdb2_36.so libdb2.so -r-xr-xr-x bin:bin for libdb2.so 5. Emita o comando db2iupdt para cada instância de banco de dados e o comando dasupdt para a instância DAS. Para voltar ao objeto original, siga o mesmo procedimento utilizando o arquivo de backup em vez do arquivo libdb2_36.so. Outros Sistemas Operacionais UNIX Entre em contato com o Suporte IBM se você precisar de assistência com o DB2 UDB e o Merant Driver Manager em outros sistemas operacionais UNIX. NFS APAR IY32512 - Encadeamentos Não Disponíveis (AIX) AIX 5 NFS APAR IY32512 pode fazer com que o comando db2stop falhe em sistemas com um grande número de partições. Em um servidor que recebe grandes números de pedidos de bloqueios de travamentos em arquivos já travados, o daemon de travamento pode não responder. Isso acontece quando todos os encadeamentos de trava disponíveis estão alocados nos encadeamentos, aguardando que as travas sejam disponibilizadas, portanto, não há encadeamento disponível para coletar o trabalho quando o pedido de destravamento é feito. Quando esta situação ocorrer, os nós parados devem ser reiniciados. Há uma solução alternativa do DB2 Universal Database para essa situação parando os nós um de cada vez utilizando a opção NODENUM do comando db2stop. Erro de Opção do Pré-compilador SQLFLAG (STD) Se a opção de pré-compilação SQLFLAG (STD) estiver ativada, ela causará o seguinte erro: C6 abortado ao executar o programa DSNHPC de Pré-compilação Remova a opção de pré-compilação SQLFLAG (STD) ao utilizar o Development Center para criar procedimentos armazenados SQL para serem executados no DB2 Universal Database para z/OS, Versão 8. Conjunto de Conexão Deve Ser Ativado ao Utilizar o Sysplex no DB2 Connect Problema O DB2 Connect(TM) não trilha conexões para outros membros de um DDF (Distributed Data Facility) quando o membro de conexão do DDF no grupo de compartilhamento de dados em OS390 foi encerrado. Com o Sysplex ativado, o DB2 Connect(TM) roteia conexões para outro membro em DDF, de acordo com a lista de servidores. O Sysplex do DB2 Connect Versão 8 foi projetado pensando no conjunto de agente. A lista de servidor do Sysplex é liberada se não houver agentes e conexões para um banco de dados. Porém, pelo menos um agente deve ser armazenado para manter a lista de servidor do Sysplex. Solução Alternativa Ative o conjunto de conexão executando os comandos a seguir: db2 update dbm cfg using num_poolagents number db2stop db2start em que number é o número máximo de agentes permitidos para serem unidos na instância DB2. O conjunto de conexão é ativado quando number for maior que 0. Recomendação Configure num_poolagents como -1, o que separa metade do valor designado para o parâmetro de configuração maxagents DB2 Connect Custom Advisor Apesar de estar documentado no DB2 Connect User's Guide, o DB2 Connect Custom Advisor não é mais suportado na Versão 8.2. Falha na Criação do Banco de Dados do Catálogo de Ferramentas (HP-UX) Problema Ao instalar o DB2 UDB (Universal Database) Versão 8.2 no HP-UX, o comando CREATE TOOLS CATALOG falha com SQLCODE -22209 se for executado em uma instância de 32 bits e o parâmetro de configuração jdk_path do DB2 Administration Server aponta para o HP-UX SDK 1.4. O defeito ocorre porque o DB2 UDB Versão 8.2 instala o HP-UX SDK 1.4 por padrão, mas a instância de 32 bits Versão 8.2 requer o HP-UX SDK 1.3 para executar o comando CREATE TOOLS CATALOG com êxito. Esse defeito também pode ocorrer ao instalar o DB2 UDB Versão 8.1 FixPak 7 se você atualizou manualmente o parâmetro de configuração jdk_path do DB2 Administration Server para apontar para o HP-UX SDK 1.4 ou se você soltou e recriou o DAS (DB2 Administration Server). O defeito ocorre porque, em qualquer um desses casos, o parâmetro de configuração jdk_path mudou para apontar para o HP-UX SDK 1.4. Uma instância de 32 bits do DB2 UDB Versão 8.2 requer HP-UX SDK 1.3 para ser executada com êxito. Solução Alternativa 1 Crie o catálogo de ferramentas em uma instância de 64 bits. Solução Alternativa 2 Crie o catálogo de ferramentas em uma instância de 32 bits, executando as seguintes etapas: 1. Faça download do HP-UX SDK 1.3 a partir do Web site do HP-UX: http://www.hp.com/products1/unix/java/ 2. Instale o HP-UX SDK 1.3. 3. Atualize o parâmetro de configuração jdk_path do DB2 Administration Server para apontar para o HP-UX SDK 1.3. Exemplo: db2 update admin config using JDK_PATH /opt/java1.3 4. Reinicie o DB2 Administration Server. db2admin stop db2admin start 5. Execute novamente o comando CREATE TOOLS CATALOG na instância de 32 bits. Exibindo Caracteres Indianos nas Ferramentas da GUI do DB2 Se você tiver problemas para exibir caracteres indianos ao utilizar as ferramentas da GUI do DB2, você pode não ter as fontes requeridas instaladas no seu sistema. O DB2 UDB (Universal Database) fornece as seguintes fontes de idioma indiano proporcionais IBM TrueType e OpenType para sua utilização. Você pode localizar estas fontes no diretório font em qualquer um dos seguintes CDs: * IBM Developer Kit, Java Technology Edition (64-bit) for AIX 5L * DB2 Embedded Application Server and applications (XML registry, Web Administration tools and Java distributed debugger) para seu sistema operacional Essas fontes devem ser utilizadas apenas junto com o DB2 UDB. Você não pode utilizar a venda ou distribuição geral ou irrestrita destas fontes: Tabela 9. Fontes Indianas Fornecidas com o DB2 UDB +-----------------------+----------------------+----------------------+ | Tipo | Peso | Nome do Arquivo | | | | Backup | +-----------------------+----------------------+----------------------+ | Devanagari MT para | Média | devamt.ttf | | IBM | | | +-----------------------+----------------------+----------------------+ | Devanagari MT para | Negrito | devamtb.ttf | | IBM | | | +-----------------------+----------------------+----------------------+ | Tâmil | Média | TamilMT.ttf | +-----------------------+----------------------+----------------------+ | Tâmil | Negrito | TamilMTB.ttf | +-----------------------+----------------------+----------------------+ | Telugu | Média | controladores | +-----------------------+----------------------+----------------------+ | Telugu | Negrito | TeleguMTB.ttf | +-----------------------+----------------------+----------------------+ Instruções detalhadas sobre como instalar as fontes e modificar o arquivo font.properties podem ser localizadas na seção Internationalization da Documentação IBM Development Kit Java. Além disso, os produtos Microsoft a seguir vêm com fontes indianas que podem ser utilizadas com ferramentas da GUI do DB2: * Sistema operacional Microsoft Windows 2000 * Sistema operacional Microsoft Windows XP * Microsoft Publisher * Microsoft Office Ferramentas da GUI Não São Suportadas para Servidores zSeries (Linux) Com a exceção do assistente de configuração do DB2, as ferramentas da GUI não funcionarão em servidores zSeries executando o sistema operacional Linux. Esta limitação inclui os itens ativados normalmente a partir da barra de lançamento Instalação, como o Quick Tour. Se desejar utilizar as ferramentas da GUI com um desses sistemas, instale as ferramentas administrativas em um sistema cliente com uma configuração de sistema diferente e utilize esse cliente para se conectar ao seu servidor zSeries. Coloque os Termos de Procura do DB2 Information Center entre Aspas se Contiverem Números Para obter resultados exatos da procura no DB2 Information Center, é necessário colocar entre aspas os termos da procura que incluem números. Por exemplo, se você procurar o seguinte termo, não receberá nenhum resultado: 1.4.1 No entanto, se você colocar o termo entre aspas, receberá os resultados apropriados: "1.4.1" Uma procura pelo seguinte termo retornará tópicos extras: DB20000I Mas uma procura pelo seguinte termo funcionará corretamente: "DB20000I" Arquivo de Registro Não-gerado do Centro de Catálogo de Informações ao Importar Arquivos de Idioma com Tags Se um arquivo de registro do Centro de Catálogo de Informações não for gerado durante a importação de arquivos com idioma com tags no Centro de Catálogo de Informações, execute as seguintes etapas de resolução de problemas: Ao executar db2icmimport a partir de uma linha de comandos: * Se os arquivos de saída não foram gerados (.xml, .out, .err, .log), provavelmente existe um erro na linha de comandos. Verifique se os primeiros cinco argumentos, que são UserId, Password, Database, Catalog e Tagfile, estão corretos. Visualize a sintaxe digitando o comando db2icmimport. Se isso não resolver o problema, modifique db2icmimport para capturar a saída do comando db2javit utilizando a opção -g para salvar a saída em um arquivo. Exemplo: db2javit -j:com.ibm.db2.common.icm.tag.IcmImport -w: -i: -o:"-Xmx128m -Xms32m" -g:"d:\temp\myimport.trc" ... * Se um arquivo de registro não for gerado, geralmente existe um erro de análise. Consulte o arquivo .xml e o arquivo .out. Se puder, insira um comando ":COMMIT.CHKPID(DEBUG)" no início do arquivo de idioma com tag. Este comando gerará mensagens de relatórios de depuração e verificará se existem erros de análise nos arquivos .xml e .out. * Após a análise, os erros devem aparecer no arquivo .log. Quando o relatório de depuração estiver sendo gerado, consulte o arquivo .log e o arquivo .out para obter informações. * Sempre verifique o arquivo .err para consultar se há um erro de tempo de execução. Quando importar arquivos de idiomas com tags utilizando a GUI do Centro de Catálogo de Informações: * Quando importar arquivos de idioma com tags utilizando a interface GUI, não são gerados arquivos .out ou .err. * Se for gerado um arquivo .log ou .xml, tente depurar utilizando esses arquivos. * Se eles não forem gerados ou não ajudarem, execute o processo de importação a partir de uma linha de comandos para obter informações adicionais. Ligando Pacotes do Query Patroller Se os pacotes do Query Patroller não estiverem ligados após aplicar um fixpak, um usuário sem autoridade DBADM ou privilégios do Query Patroller pode encontrar os seguintes erros quando estiver utilizando o Query Patroller Center ou a linha de comandos do Query Patroller: SQL0001N - A ligação ou pré-compilação não foi concluída com sucesso. Se estiver utilizando o Query Patroller Center, o erro SQL0001N é registrado no arquivo qpdiag.log. Se estiver utilizando a linha de comandos do Query Patroller, o SQL0001N é devolvido ao console. O código de ligação automática existe para inicializar a ligação automática. Entretanto, a ligação automática pode falhar se o usuário conectado não tem os privilégios requeridos para executar todas as instruções nos pacotes do Query Patroller. Um sintoma desse tipo de problema é o desaparecimento de pastas dentro do Centro do Query Patroller. Para evitar esse problema, os pacotes qpserver.lst devem ser ligados manualmente por um usuário com autoridade DBADM ou privilégios necessários após aplicar um fixpak. Não-disponibilidade de Portas com o Query Patroller (Windows) Problema As consultas fornecidas no Query Patroller podem receber o código SQL -29007 quando não há mais portas disponíveis no Windows XP ou Windows 2003. A probabilidade deste erro aumenta proporcionalmente com um número maior de clientes que acessam o Query Patroller. Solução Alternativa Configure as variáveis de registro do Windows a seguir: MaxUserPort=65534 TcpTimedWaitDelay=30 e reinicie seu sistema para que as alterações entrem em vigor. Detalhes sobre a configuração das variáveis de registro do Windows podem ser localizados no web site de Ajuda e Suporte da Microsoft(R) em http://support.microsoft.com/. Ambientes Seguros (Windows) Você poderá ter problemas de permissão de arquivo se estiver utilizando o DB2 UDB (Universal Database) no Windows e não for um administrador no sistema Windows. Se você receber uma mensagem de erro SQL1035N, SQL1652N ou SQL5005C, as possíveis causas e soluções alternativas são mostradas a seguir: O Usuário Não tem Autoridade Suficiente no Diretório Sqllib Problema O usuário recebe um erro SQL1035N ou SQL1652N ao tentar abrir o CLP ou a janela de comandos do DB2. O código do DB2 UDB (arquivos principais) está instalado em uma estrutura de diretórios em que os privilégios de gravação são limitados, mas algumas ferramentas do DB2 UDB precisam gravar e criar arquivos no diretório DB2INSTPROF. Solução Alternativa Crie um novo diretório em que você possa conceder aos usuários, no mínimo, a permissão MODIFY e utilize db2set -g db2tempdir para apontar para o novo diretório ou defina a variável db2tempdir no ambiente do sistema Windows. O Usuário Não Tem Autoridade Suficiente para Gravar no Diretório sqllib\, Apesar do Usuário Pertencer ao SYSADM_GROUP Problema O usuário recebe um erro do sistema SQL5005C ao tentar atualizar o arquivo de configuração do gerenciador de banco de dados (update dbm cfg). O usuário não tem as permissões NTFS requeridas para gravar no diretório sqllib\instance_dir, apesar deste usuário ter sido incluído no SYSADM_GROUP. Primeira Solução Alternativa Conceder aos usuários, pelo menos, a permissão MODIFY para o diretório instance_dir no nível do sistema de arquivos. Segunda Solução Alternativa Crie um novo diretório para o qual possa conceder ao usuário, pelo menos, a permissão MODIFY. Utilize o comando db2set db2instprof para apontar para o novo diretório. Será necessário recriar a instância para que as informações sejam armazenadas no novo diretório da instância especificado por db2instprof, ou será necessário mover o antigo diretório da instância para o novo diretório. Programas de Amostra do XML Extender Renomeados Alguns programas de amostras do XML Extender podem ter o mesmo nome de outros programas instalados. Chamar acidentalmente outro programa que tenha o mesmo nome do programa de amostra do XML Extender pode danificar seus arquivos XML. A lista a seguir mostra os programas de amostra do XML Extender além de novos nomes de programas de substituição que causarão menos conflitos. Certifique-se de utilizar os novos nomes dos programas de amostras ao invés dos antigos para prevenir danos aos arquivos XML. Tabela 10. Programas de Amostra de Substitutos para o XML Extender (Windows) +----------------------------------+----------------------------------+ | Programa Antigo (Não Utilizar) | Novo Programa (Utilizar) | +----------------------------------+----------------------------------+ | insertx.exe | dxxisrt.exe | +----------------------------------+----------------------------------+ | retrieve.exe | dxxretr.exe | +----------------------------------+----------------------------------+ | retrieve2.exe | dxxretr2.exe | +----------------------------------+----------------------------------+ | retrievec.exe | dxxretrc.exe | +----------------------------------+----------------------------------+ | shred.exe | dxxshrd.exe | +----------------------------------+----------------------------------+ | tests2x.exe | dxxgenx.exe | +----------------------------------+----------------------------------+ | tests2xb.exe | dxxgenxb.exe | +----------------------------------+----------------------------------+ | tests2xc.exe | dxxgenxc.exe | +----------------------------------+----------------------------------+ Tabela 11. Programas de Amostra de Substitutos para o XML Extender (Linux e UNIX) +----------------------------------+----------------------------------+ | Programa Antigo (Não Utilizar) | Novo Programa (Utilizar) | +----------------------------------+----------------------------------+ | insertx | dxxisrt | +----------------------------------+----------------------------------+ | retrieve | dxxretr | +----------------------------------+----------------------------------+ | retrieve2 | dxxretr2 | +----------------------------------+----------------------------------+ | retrievec | dxxretrc | +----------------------------------+----------------------------------+ | shred | dxxshrd | +----------------------------------+----------------------------------+ | tests2x | dxxgenx | +----------------------------------+----------------------------------+ | tests2xb | dxxgenxb | +----------------------------------+----------------------------------+ | tests2xc | dxxgenxc | +----------------------------------+----------------------------------+ Utilizando os Novos Programas de Amostra com os Arquivos sqx de Amostra O código fonte (arquivos .sqx) para os executáveis listados acima está localizado no diretório samples\db2xml\c de sua instalação. Os arquivos de origem ainda estão rotulados com seus nomes antigos. Se você fizer alterações no código fonte, copie os executáveis recém-compilados (com os nomes antigos) para o diretório sqllib\bin. Em plataformas Windows, você deve fazer uma cópia adicional, renomeá-la com seu novo nome acima e copiá-la para o diretório bin. As duas cópias substituem os arquivos existentes no diretório bin. Por exemplo, depois de compilar sua nova versão do shred.exe, é necessário fazer duas cópias e substituir os arquivos no diretório bin: um identificado como shred.exe e o outro renomeado dxxshrd.exe. Em plataformas Linux e UNIX, é necessário apenas substituir o arquivo com o nome antigo pela versão recém-compilada. Se criar os novos arquivos executáveis a partir dessas amostras, você deverá copiar os novos arquivos a partir do diretório \SQLLIB\samples\db2xml\c\ para o diretório \SQLLIB\bin\ e fazer uma cópia adicional, renomeando-os de acordo com a tabela acima. Decompondo Documentos no XML Extender que Contenham Nomes de Atributos e Elementos Não-exclusivos Agora você pode decompor documentos que contenham nomes de atributos e/ou de elementos não exclusivos que são mapeados para diferentes colunas (de tabelas iguais ou diferentes) sem receber o erro DXXQ045E. A seguir está um exemplo de um documento XML com nomes de atributos e elementos não-exclusivos: John Smith Jane Doe xxxx-xxxx 2 12.50 yyyy-yyyy 4 24.99 O DAD de acompanhamento, que mapeia os elementos/atributos duplicados para diferentes colunas, tem o seguinte aspecto:
order_tab.order_id=detail_tab.order_id
detail_tab" />
O conteúdo das tabelas teriam o seguinte aspecto após a decomposição do documento acima: ORDER _TAB: ORDER_ID CUST_ID CUST_NAME SALESP_ID SALESP_NAME 0001-6789 1111 John Smith 1234 Jane Doe DETAIL_TAB: ORDER_ID ITEMNO QUANTITY UNIT_PRICE 0001-6789 xxxx-xxxx 2 12.50 0001-6789 yyyy-yyyy 4 24.99 Nota: Para mapear vários elementos e atributos para a mesma coluna da mesma tabela, defina um alias para a tabela e utilize o alias no elemento da DAD de um dos mapeamentos. Diferenças entre SNA e TCP/IP ao Utilizar o DB2 Connect Ao conectar a um sistema OS/390 utilizando SNA, a camada VTAM do host envia automaticamente uma consolidação quando uma nova conexão é feita. A consolidação automática permite que o estado do encadeamento no lado do host fique inativo e o encadeamento fique imediatamente inativo. Porém, ao conectar-se a um sistema OS/390 utilizando TCP/IP, não há consolidação automática. O próprio aplicativo deve fluir para uma consolidação explícita após a conexão para permitir que o encadeamento fique inativo no host. Sem a consolidação explícita, o encadeamento está sujeito à uma finalização de encadeamento inativo. A solução alternativa sugerida é escrever novamente o aplicativo para que ele execute uma consolidação explícita se a conexão ficar inativa após a conexão. Atualizações de Documentação Marcas de revisão indicam texto que foi incluído ou alterado. Uma barra vertical ( | ) indica informações que foram incluídas ou alteradas para a Versão 8.2 FixPak 4 (equivalente à Versão 8.1 FixPak 11). Administração: Implementação Configuração de Novo Roteamento de Cliente Automático (DB2_MAX_CLIENT_CONNRETRIES e DB2_CONNRETRIES_INTERVAL) Por padrão, o recurso de novo roteamento de cliente automático tenta novamente a conexão com um banco de dados repetidamente por até 10 minutos. No entanto, é possível configurar o comportamento exato de nova tentativa utilizando uma ou as duas variáveis de registro a seguir: * DB2_MAX_CLIENT_CONNRETRIES: O número máximo de novas tentativas de conexão feitas pelo novo roteamento de cliente automático. * DB2_CONNRETRIES_INTERVAL: O tempo de suspensão entre novas tentativas de conexão consecutivas, em número de segundos. Se DB2_MAX_CLIENT_CONNRETRIES estiver configurado, mas DB2_CONNRETRIES_INTERVAL não, DB2_CONNRETRIES_INTERVAL assumirá o padrão de 30. Se DB2_MAX_CLIENT_CONNRETRIES não estiver configurado, mas DB2_CONNRETRIES_INTERVAL estiver, DB2_MAX_CLIENT_CONNRETRIES assumirá o padrão de 10. Se nem DB2_MAX_CLIENT_CONNRETRIES nem DB2_CONNRETRIES_INTERVAL estiver configurado, o recurso de novo roteamento de cliente automático será revertido para seu comportamento padrão descrito anteriormente. Nota: Os usuários da conectividade Tipo 4 com o DB2(R) Universal JDBC Driver devem utilizar as duas seguintes propriedades de origem de dados para configurar o novo roteamento de cliente automático: * maxRetriesForClientReroute: Utilize esta propriedade para limitar o número de novas tentativas se a conexão primária com o servidor falhar. Esta propriedade será utilizada apenas se a propriedade retryIntervalClientReroute também estiver configurada. * retryIntervalForClientReroute: Utilize esta propriedade para especificar o período de tempo (em segundos) para suspensão antes de uma nova tentativa. Esta propriedade será utilizada apenas se a propriedade maxRetriesForClientReroute também estiver configurada. Esclarecimento da Variável de Registro DB2TIMEOUT A variável de registro DB2TIMEOUT não é mais suportada. Esta configuração foi utilizada para controlar o período de tempo limite para clientes do Windows(R) 3.x e Macintosh durante longas consultas SQL. Este recurso foi desativado por padrão. Diretórios Criados durante a Criação do Contêiner de Espaço de Tabelas Ao criar contêineres de espaço de tabelas, o DB2 UDB cria todos os níveis de diretório que não existem. Por exemplo, se um contêiner for especificado como /project/user_data/container1 e o diretório /project não existir, o DB2 UDB criará os diretórios /project e /project/user_data. Começando com o DB2 UDB V8.2, FixPak 4, os diretórios criados pelo DB2 UDB são criados com PERMISSION 700. Isto significa que apenas o proprietário possui acesso de leitura, gravação e execução. Ao criar várias instâncias, observe o seguinte cenário: 1. Utilizando a mesma estrutura de diretórios utilizada acima, suponha que os níveis de diretório /project/user_data não existam. 2. user1 cria uma instância, denominada user1 por padrão, em seguida, cria um banco de dados e, em seguida, cria um espaço de tabelas com /project/user_data/container1 como um de seus contêineres. 3. user2 cria uma instância, denominada user2 por padrão, em seguida, cria um banco de dados e, em seguida, tenta criar um espaço de tabelas com /project/user_data/container2 como um de seus contêineres. Como o DB2 UDB criou os níveis de diretório /project/user_data com PERMISSION 700 no primeiro pedido, user2 não possui acesso a estes níveis de diretório e não pode criar container2 nestes diretórios. Neste caso, a operação CREATE TABLESPACE falhará. Existem dois métodos para resolver este conflito: 1. Crie o diretório /project/user_data antes de criar os espaços de tabelas e de configurar a permissão para qualquer tipo de acesso requerido para user1 e user2 para criar os espaços de tabelas. Se existirem todos os níveis de um diretório de espaço de tabelas, o DB2 UDB não modificará o acesso. 2. Quando user1 criar /project/user_data/container1, configure a permissão de /project/user_data para qualquer tipo de acesso requerido para user2 para criar o espaço de tabelas. Armazenamento Automático O formato de nomes para os contêineres foi alterado de maneira que o ID do espaço de tabelas e o ID do contêiner também foram alterados. O novo formato é: //NODE#### /T####### /C#######. em que: * /T####### é o ID do espaço de tabelas. Por exemplo, T0000003. * /C####### é o ID do contêiner. Por exemplo, C0000012. Definindo uma Coluna Gerada em uma Tabela Existente Iniciando com o DB2(R) Universal Database Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9), as colunas geradas podem ser utilizadas em índices exclusivos. As colunas geradas não podem ser utilizadas em restrições, restrições referenciais, chaves primárias e tabelas temporárias globais. Uma tabela criada com LIKE e exibições materializadas não herda as propriedades da coluna gerada. Variáveis de Registro Agregadas Ao definir DB2WORKLOAD=SAP, o espaço de tabelas do usuário SYSTOOLSPACE e o espaço de tabelas temporário do usuário SYSTOOLSTEMPSPACE não são criados automaticamente. Esses espaços de tabelas são utilizados para tabelas criadas pelos seguintes assistentes, utilitários ou funções: * Manutenção automática * Orientador de design * Painel de informações do banco de dados Centro de Controle * Procedimento armazenado SYSINSTALLOBJECTS, se o parâmetro de entrada do espaço de tabelas não for especificado * Procedimento armazenado GET_DBSIZE_INFO Sem os espaços de tabelas SYSTOOLSPACE e SYSTOOLSTEMPSPACE, não é possível utilizar esses assistentes, utilitários ou funções. Para estar apto a utilizar os assistentes, utilitários ou funções, faça um dos seguintes: * Crie manualmente SYSTOOLSPACE (apenas no nó de catálogo, se utilizar DPF). Por exemplo: CREATE REGULAR TABLESPACE SYSTOOLSPACE IN IBMCATGROUP MANAGED BY SYSTEM USING ('SYSTOOLSPACE') * Chame SYSINSTALLOBJECTS para criar objetos, especificando um espaço de tabelas válido para cada um dos seguintes nomes de ferramentas: "DB2AC", "POLICY" e "STMG_DBSIZE_INFO" Após concluir pelo menos uma dessas opções, crie um espaço de tabelas temporário do usuário (também apenas no nó de catálogo, se utilizar DPF). Por exemplo: CREATE USER TEMPORARY TABLESPACE SYSTOOLSTMPSPACE IN IBMCATGROUP MANAGED BY SYSTEM USING ('SYSTOOLSTMPSPACE') Após criar o espaço de tabelas SYSTOOLSPACE e o espaço de tabelas temporário SYSTOOLSTEMPSPACE, é possível utilizar os assistentes, utilitários ou funções mencionados anteriormente. Considerações de Autenticação para Clientes Remotos O tipo de autenticação DATA_ENCRYPT_CMP é projetado para permitir que os clientes de um release anterior que não suportam criptografia de dados conectem-se a um servidor utilizando a autenticação SERVER_ENCRYPT em vez da DATA_ENCRYPT. Esta autenticação não funciona quando as três instruções a seguir são verdadeiras: * O nível do cliente é Versão 7.2. * O nível do gateway é Versão 8 FixPak 7 ou posterior. * O servidor é Versão 8 FixPak 7 ou posterior. Neste caso, o cliente não pode se conectar ao servidor. Para permitir a conexão, você deve fazer upgrade do cliente para a Versão 8 ou ter seu nível de gateway na Versão 8 FixPak 6 ou posterior. Suporte a DIO (Direct I/O) e CIO (Concurrent I/O) A DIO (Direct I/O) aprimora o desempenho da memória porque evita o armazenamento em cache no nível do sistema de arquivos. Este processo reduz o código extra da CPU e disponibiliza mais memória para a instância do banco de dados. A CIO (Concurrent I/O) inclui as vantagens da DIO e também livra a serialização dos acessos de gravação. DB2 UDB (Universal Database) suporta DIO e CIO no AIX; e DIO no HP-UX, Solaris Operating Environment, Linux e Windows. As palavras-chave NO FILE SYSTEM CACHING e FILE SYSTEM CACHING são parte das instruções CREATE e ALTER TABLESPACE SQL para permitir especificar se DIO ou CIO deve ser utilizada com cada espaço de tabela. Quando NO FILE SYSTEM CACHING está efetivo, DB2 UDB tenta utilizar E/S concorrente sempre que possível. Nos casos em que a CIO não é suportada (por exemplo, se JFS for utilizado), a DIO será utilizada no lugar. Para obter informações adicionais, consulte o artigo "Aprimorar o desempenho do banco de dados nos contêineres do sistema de arquivos no IBM DB2 UDB Stinger utilizando a Concurrent I/O no AIX" localizado na seguinte URL: http://www.ibm.com/developerworks/db2/library/techarticle/dm-0408lee/ Tecnologia de Distribuidor e Novo Roteamento de Cliente Automático As informações a seguir fazem parte do Apêndice B do Administration Guide: Implementation "Using automatic client rerouting": O recurso de novo roteamento de cliente automático do DB2 Universal Database para Linux, UNIX, e Windows permite que os aplicativos clientes se recuperem de uma perda de comunicação com o servidor restabelecendo automaticamente a conexão com o banco de dados do cliente para o servidor, para que o aplicativo possa continuar a funcionar com interrupção mínima. Quando uma conexão do cliente para o servidor falha, os pedidos do cliente para reconexão são distribuídos para um conjunto definido de sistemas por um distribuidor ou dispatcher, como WebSphere EdgeServer Você pode estar usando a Tecnologia de Distribuidor em um ambiente semelhante ao seguinte: Cliente --> Tecnologia de Distribuidor --> (DB2 Connect Server 1 ou DB2 Connect Server 2) --> DB2 z/OS em que: * O componente de Tecnologia de Distribuidor tem um nome de host TCP/IP de DThostname * O DB2 Connect Server 1 tem um nome de host TCP/IP de GWYhostname1 * O DB2 Connect Server 2 tem um nome de host TCP/IP de GWYhostname2 * O servidor DB2 z/OS tem um nome de host TCP/IP de zOShostname O cliente é catalogado usando DThostname para utilizar a tecnologia de distribuidor para acessar qualquer um dos Servidores DB2 Connect. A tecnologia de distribuidor mediadora toma a decisão de utilizar GWYhostname1 ou GWYhostname2. Depois que a decisão é tomada, o cliente tem uma conexão de soquete direta com um desses dois gateways DB2 Connect. Depois que a conectividade do soquete é estabelecida com o servidor DB2 Connect escolhido, você tem um cliente típico para o servidor DB2 Connect para conectividade com o DB2 z/OS. Por exemplo, suponha que o distribuidor escolha GWYhostname2. Isso produz o seguinte ambiente: Cliente --> DB2 Connect Server 2 --> DB2 z/OS O distribuidor não repete nenhuma das conexões se houver qualquer defeito de comunicação. Se você desejar ativar o recurso Novo Roteamento de Cliente Automático para um banco de dados nesse ambiente, o servidor alternativo para o banco de dados ou bancos de dados associados no DB2 Connect Server (DB2 Connect Server 1 ou DB2 Connect Server 2) deverá ser configurado para ser o distribuidor (DThostname). Em seguida, se o DB2 Connect Server 1 travar por algum motivo, o Novo Roteamento de Cliente Automático será acionado e a conexão do cliente será repetida como o distribuidor como servidor principal e alternativo. Esta opção permite combinar e manter os recursos do distribuidor com o recurso Novo Roteamento de Cliente Automático do DB2. Definir o servidor alternativo para um host diferente do nome do host do distribuidor ainda fornecerá aos clientes o recurso Novo Roteamento de Cliente Automático. Porém, os clientes estabelecerão conexões diretas com o servidor alternativo definido e evitarão a tecnologia de distribuidor, o que elimina o distribuidor e o valor que ele traz. O Novo Roteamento de Cliente Automático interceptará os seguintes sqlcodes: * sqlcode -20157 * sqlcode -1768 (código de razão = 7) Considerações sobre o Novo Roteamento de Cliente Automático para Catalogar em um Servidor DB2 Connect Considere os dois itens a seguir que envolvem a conectividade de servidor alternativo com o servidor DB2 Connect: * A primeira consideração envolve a utilização do servidor DB2 Connect para fornecer acesso a um host ou banco de dados do iSeries em nome dos clientes remotos e locais. Nestas situações, pode haver confusão em relação às informações de conectividade de servidor alternativo em uma entrada do diretório do banco de dados do sistema. Para minimizar essa confusão, considere catalogar duas entradas no diretório de banco de dados do sistema para representar o mesmo host ou banco de dados do iSeries. Catalogue uma entrada para clientes remotos e catalogue outra para clientes locais. * Segundo, as informações do servidor alternativo que são retornadas de um servidor de destino são mantidas apenas em cache. Se o processo do DB2 for encerrado, as informações do cache e, portanto, as informações do servidor alternativo, serão perdidas. Suporte à Conta do Sistema Local (Windows) Os aplicativos em execução no contexto de LSA (Local System Account) são suportados em todas as plataformas Windows, exceto a Windows ME. Suporte ao ID do Usuário com Duas Partes A instrução CONNECT e o comando ATTACH suportam IDs do usuário de duas partes. O qualificador do ID do usuário compatível com SAM é o nome de estilo do NetBIOS que possui um comprimento máximo de 15 caracteres. Este recurso não é suportado no Windows ME. Detalhes de Autenticação de Kerberos Kerberos e Proprietários de Clientes É possível substituir o nome do proprietário do servidor Kerberos utilizado pelo servidor DB2(R) UDB (Universal Database) nos sistemas operacionais UNIX(R) e Linux(TM). Defina a variável de ambiente DB2_KRB5_PRINCIPAL para o nome de proprietário do servidor completo desejado. A instância deve ser reiniciada, pois o nome do proprietário do servidor é reconhecido apenas pelo DB2 UDB após db2start ser executado. Informações Adicionais para Suporte Kerberos Pré-requisitos Linux Os pré-requisitos para suporte ao Linux Kerberos são relatados de forma não exata na documentação. O plug-in de segurança do DB2 Kerberos é suportado com o Red Hat Enterprise Linux Advanced Server 3 com o cliente IBM NAS (Network Authentication Service) 1.4. Compatibilidade zSeries e iSeries Para conexões com zSeries e iSeries, o banco de dados deve ser catalogado com o parâmetro AUTHENTICATION KERBEROS e o nome do parâmetro TARGET PRINCIPAL deve ser especificado explicitamente. Nem zSeries e nem iSeries suportam autenticação mútua. Problemas do Windows * Devido à maneira que o Windows detecta e relata alguns erros, as condições a seguir resultam em um erro inesperado de plug-in de segurança do cliente (SQL30082N, rc=36): * Conta expirada * Senha inválida * Senha expirada * Alteração de senha forçada pelo administrador * Conta desativada Além disso, em todos os casos, o registro de administração do DB2 ou db2diag.log indicará "Falha no Logon" ou "Logon Negado." * Se um nome de conta de domínio também estiver definido localmente, as conexões que especificam explicitamente o nome de domínio e a senha falharão com o seguinte erro: A Autoridade de Segurança Local não pode ser contactada O erro é um resultado do Windows localizar o usuário local primeiro. A solução é qualificar totalmente o usuário na cadeia de conexão. Por exemplo: name@DOMAIN.IBM.COM * As contas do Windows não podem incluir o caractere @ em seu nome porque o caractere é considerado o separador de domínio pelo plug-in do DB2 Kerberos. * Ao interoperar com uma plataforma não-Windows, certifique-se de que todas as contas do servidor de domínio do Windows e todas as contas de cliente do Windows sejam configuradas para utilizar a criptografia DES. Se a conta utilizada para iniciar o serviço do DB2 não for configurada para utilizar a criptografia DES, o servidor DB2 falhará ao aceitar contextos Kerberos. Em particular, o DB2 Universal Database falhará com um erro inesperado de plug-in de servidor e registrará que a API AcceptSecurityContext retornou SEC_I_CONTINUE_NEEDED (0x00090312L). Para determinar se as contas do Windows estão configuradas para utilizar a criptografia DES, consulte Propriedades da Conta no Diretório Ativo. Pode ser requerido um reinício, se as propriedades da conta forem alteradas. * Se o cliente e o servidor estiverem no Windows, o serviço do DB2 poderá ser iniciado na conta do sistema local. No entanto, se o cliente e o servidor estiverem em domínios diferentes, a conexão poderá falhar com um erro de nome de proprietário de destino inválido. A solução alternativa é catalogar explicitamente o nome do proprietário de destino no cliente utilizando o nome completo do host do servidor e o nome completo do domínio, no seguinte formato: host/@ Por exemplo: host/myhost.domain.ibm.com@DOMAIN.IBM.COM Caso contrário, será necessário iniciar o serviço do DB2 em uma conta de domínio válida. Administração: Desempenho Comparação da Variável de Registro DB2_FORCE_FCM_BP em Ambientes de 32 Bits e de 64 Bits Quando ativar a variável de registro DB2_FORCE_FCM_BP, haverá alguns segmentos de memória compartilhada disponíveis para outros usuários, especificamente para conjuntos de buffers de banco de dados. Portanto, a ativação da variável de registro DB2_FORCE_FCM_BP reduz o tamanho máximo de conjuntos de buffers do banco de dados. Observe que, devido ao grande número de segmentos de memória compartilhada disponíveis em um ambiente de 64 bits, esta redução no número de segmentos de memória compartilhada deve ser um problema apenas em ambientes de 32 bits. RUNSTATS Recomendado Após Criação da Tabela Quando uma tabela é criada pela primeira vez, as estatísticas do catálogo do sistema são configuradas como -1 para indicar que a tabela não possui estatísticas. Até que as estatísticas sejam reunidas, o DB2 UDB utiliza valores padrão para compilação e otimização de instruções SQL. A atualização de estatísticas de tabela ou de índice falhará se os novos valores estiverem inconsistentes com os valores padrão. Portanto, execute o comando runstats em uma tabela ou índice antes de atualizar manualmente estatísticas para qualquer um deles. Novo Código de Razão para SQL1169N A mensagem de erro SQL SQL1169N possui um novo código de razão 5 para indicar que uma coluna de uma tabela de explicação é muito pequena. * Explicação do código de razão 5: Uma coluna de uma tabela de explicação é muito pequena. O db2diag.log conterá mensagens que identificam o nome do esquema, nome da tabela e nome da coluna, bem como o tamanho de coluna requerido para conter os dados gerados pelo recurso Explain. * Resposta do Usuário: Decida se o tamanho de coluna requerido pode ser acomodado em sua tabela ou banco de dados. Se puder, aumente o tamanho de coluna utilizando a instrução ALTER TABLE. Estratégias de Otimização para Tabelas MDC O texto a seguir é uma atualização para o Administration Guide: Performance, Chapter 6. Understanding the SQL compiler. A consolidação MDC pode ser utilizada se um índice RID fizer parte de um plano de otimização, independentemente da presença de uma cláusula WHERE na instrução DELETE. Por isso, ao listar as condições que devem ser atendidas para permitir a consolidação e a utilização de uma maneira mais eficiente para excluir linhas, a condição que "um índice RID não foi escolhido pelo otimizador para localizar as linhas a serem excluídas, a menos que não exista nenhuma cláusula WHERE na instrução DELETE " deve ser removida. Além disso, você pode informar se a consolidação MDC está em vigor porque a saída db2expln mostra a frase "Exclusão de Célula". Observe que db2exfmt não mostra estas informações. O texto a seguir é uma atualização para o Apêndice A. Registro e Variáveis de Ambiente do DB2: A descrição de DB2_MDC_ROLLOUT deve ser alterada para que a condição que "um índice RID não foi escolhido pelo otimizador para localizar as linhas a serem excluídas, a menos que não exista nenhuma WHERE na instrução DELETE" deve ser removida da lista. Esclarecimento da Descrição de Parâmetros de Configuração NEWLOGPATH, MIRRORPATH e OVERFLOWLOGPATH Se você atualizar os valores de parâmetros de configuração newlogpath, mirrorpath ou overflowlogpath em um ambiente do DB2 UDB Enterprise Server Edition, o número do nó será anexado ao nome do caminho, independentemente do número de nós do sistema. Isto se aplica a sistemas de partição única e multipartição em um ambiente do DB2 UDB Enterprise Server Edition. Valor Padrão DB2_COLLECT_TS_REC_INFO O valor padrão para DB2_COLLECT_TS_REC_INFO é ON. No DB2 UDB V 8.1 FixPak 7, o valor padrão para a variável de registro DB2_COLLECT_TS_REC_INFO foi alterado para ON. A documentação atual especifica incorretamente o padrão para esta variável como OFF. O Utilitário Governor Uma instância de Governor consiste de um utilitário front-end e de um ou mais daemons. Cada instância do Governor que você iniciar será específica para uma instância do gerenciador de banco de dados. Por padrão, quando você inicia o Governor, um administrador daemon é iniciado em cada partição do banco de dados particionado. Porém, você pode especificar que um daemon seja iniciado em uma partição única que você queira monitorar. Notas: 1. Quando o Governor estiver ativo, seu pedido de captura instantânea provavelmente afetará o desempenho do gerenciador de banco de dados. Para aprimorar o desempenho, aumente o intervalo de ativação do Governor para reduzir o uso da CPU. 2. Os daemons do Governor emitem capturas instantâneas locais para a instância local enquanto executam. Então, qualquer regra que contenha cláusulas setlimit é aplicada na saída a partir da saída da captura instantânea LOCAL ao invés do resultado agregado das capturas instantâneas GLOBAL. Cada daemon Governor coleta informação sobre os aplicativos que estão em execução no banco de dados. O daemon do governor verifica, então, estas informações nas regras especificadas no arquivo de configuração do governor para este banco de dados. Escolhendo um Método de Reorganização de Tabelas Ao considerar a reorganização da tabela local (ao invés da reorganização da tabela clássica), saiba que reorganização da tabela local requer mais espaço em registro. Pelo fato de a reorganização da tabela local registrar suas atividades, por isso a recuperação é possível após uma deficiência inesperada, ela requer mais espaço em registro do que a reorganização clássica. É possível que uma reorganização local solicite um espaço em registro, muitas vezes, igual ao tamanho da tabela reorganizada. A quantidade de espaços solicitados depende do número de filas que são movidas e do número e tamanho dos índices da tabela. Recomendação: Escolha reorganização de tabela local para operações 24x7 com o mínimo de janelas de manutenção. A reorganização de tabela on-line de uma tabela DMS permite a iniciação da operação de backup on-line de um espaço de tabelas no qual a tabela reside enquanto ocorre a reorganização. Onde provavelmente pode haver bloqueios pendentes da operação de reorganização durante a fase de truncamento. Consulte as descrições de sintaxe REORG TABLE para obter informações detalhadas sobre a execução desses métodos de reorganização de tabela. Suporte para Página Grande da Memória FCM (AIX 5L 64 bits) Em AIX(R) 5L 64 bits, a variável de registro DB2_LARGE_PAGE_MEM suporta agora a palavra-chave FCM. Por padrão, no AIX(R) 5L(TM) 64 bits, a memória FCM está no conjunto de memória DBMS. Porém, quando a variável de registro DB2_FORCE_FCM_BP estiver ativada, a memória FCM está em seu próprio conjunto de memória. No AIX 5L(TM) 64 bits, DB2_LARGE_PAGE_MEM suporta a especificação do conjunto de memória DBMS. Quando a memória FCM estiver no conjunto de memória DBMS e o suporte a página grande estiver ativado para aquele conjunto de memória, a memória FCM estará nas páginas grandes. Quando a memória FCM estiver em um de seus próprios conjunto de memória, a palavra-chave FCM deve ser incluída ao valor da variável de registro DB2_LARGE_PAGE_MEM para ativar páginas grandes para memória FCM. Variável de Registro DB2_RESOURCE_POLICY Aceita um Novo Elemento Iniciando com o DB2 UDB(TM) (Universal Database) Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9), o arquivo de configuração especificado pela variável de registro DB2_RESOURCE_POLICY aceita um elemento SCHEDULING_POLICY. O elemento SCHEDULING_POLICY pode ser utilizado em algumas plataformas para selecionar: * A política de planejamento do sistema operacional utilizada pelo servidor DB2 UDB Nota: O recurso para definir uma política de planejamento do sistema operacional estende-se ao DB2 para AIX(R). Ele estava disponível anteriormente apenas para DB2 UDB para Windows(R), utilizando a variável de registro DB2NTPRICLASS. * As prioridades do sistema operacional, utilizadas pelos agentes individuais do servidor DB2 As variáveis de registro DB2PRIORITIES e DB2NTPRICLASS podem ser utilizadas separadamente para controlar a política de planejamento do sistema operacional e definir as prioridades do agente DB2. No entanto, a especificação de um elemento SCHEDULING_POLICY no arquivo de configuração da política de recursos fornece um local único para especificar a política de planejamento e as prioridades do agente associadas. Exemplo 1 A seleção da política de planejamento AIX SCHED_FIFO2 com um impulso de prioridade para os processos de gravador e leitora de registros do db2: SCHED_FIFO2 60 db2loggr 56 db2loggw 56 Exemplo 2 A substituição para DB2NTPRICLASS=H no Windows. HIGH_PRIORITY_CLASS Novas Variáveis de Ambiente do Sistema (Linux) As variáveis de ambiente do sistema DB2_MAPPED_BASE e DB2DBMSADDR foram incluídas no FixPak 8. O uso dessas variáveis de registro é recomendado apenas para usuários avançados. DB2_MAPPED_BASE Nome da Variável DB2_MAPPED_BASE Valores Endereço virtual 0 OU (hex) no intervalo de endereço de 31 bits e 32 bits OU NULO (não definido) Sistemas Operacionais Linux em x86 e Linux em zSeries (31 bits) Descrição A variável de registro DB2_MAPPED_BASE pode ser utilizada para aumentar a quantidade de espaço do endereço virtual contíguo disponível para um processo do DB2 UDB (Universal Database) relocalizando o endereço de conexão das bibliotecas compartilhadas para o processo específico. O espaço do endereço virtual contíguo é importante para maximizar a quantidade de memória compartilhada do banco de dados disponível para o DB2 UDB. Essa variável é efetiva apenas em distribuições que incluem o arquivo mapped_base no diretório de identificação do processo no sistema de arquivos proc. O DB2 UDB tentará relocalizar as bibliotecas compartilhadas para o endereço virtual 0x10000000, se essa variável não estiver definida. A variável de registro também poderá ser definida para qualquer endereço virtual (em hex) no intervalo do espaço de endereço de 31 e 32 bits. Nota: O endereço incorreto pode causar problemas graves com o DB2 UDB, variando da incapacidade de iniciar o DB2 UDB até a incapacidade de se conectar ao banco de dados. Um endereço incorreto é aquele que colide com uma área na memória que já está em uso ou está pré-destinada a ser utilizada para algo mais. Para endereçar este problema, redefina a variável DB2_MAPPED_BASE para NULL utilizando o comando a seguir: db2set DB2_MAPPED_BASE= A mensagem a seguir pode aparecer várias vezes no arquivo db2diag.log porque essa alteração é requerida uma vez por nó lógico: ADM0506I DB2 has automatically updated the "mapped_base" kernel parameter from "0x40000000(hex) 1073741824(dec)" to the recommended value "0x10000000(hex) 268435456(dec)". Essa mensagem aparecerá apenas se a definição da variável de registro for bem-sucedida e incluirá o endereço no qual as bibliotecas compartilhadas estão relocalizadas. DB2DBMSADDR Nome da Variável DB2DBMSADDR Valores Endereços virtuais no intervalo de 0x09000000 a 0xB0000000 em incrementos de 0x10000 Sistemas Operacionais Linux em x86 e Linux em zSeries (31 bits) Descrição Especifica o endereço de memória compartilhada do banco de dados padrão no formato hexadecimal. Nota: Um endereço incorreto pode causar problemas graves com o DB2 UDB, variando da incapacidade de iniciar o DB2 UDB até a incapacidade de se conectar ao banco de dados. Um exemplo de um endereço incorreto é aquele que colide com uma área na memória que já está em uso ou está pré-destinada a ser utilizada para algo mais. Para endereçar este problema, redefina a variável DB2DBMSADDR para NULL utilizando o comando a seguir: db2set DB2DBMSADDR= Essa variável pode ser definida junto com DB2_MAPPED_BASE ou sozinha para ajustar o layout do espaço de endereço dos processos do DB2 UDB. Essa variável altera a localização da memória compartilhada da instância de sua localização atual no endereço virtual 0x20000000 para o novo valor fornecido. Nova Variável de Registro de Comunicação A variável de registro DB2TCP_CLIENT_RCVTIMEOUT foi incluída na Versão 8.2. Tabela 12. Variáveis de Comunicações +---------------------------+-------------+---------------------------+ | Nome da Variável | Sistemas | Valores | | | Operacionai | | | | s | | +---------------------------------------------------------------------+ | Descrição | +---------------------------+-------------+---------------------------+ | DB2TCP_CLIENT_RCVTIMEOUT | Todos | Padrão=0 (não definido) | | | | Valores: 0 a 32767 | | | | segundos | +---------------------------------------------------------------------+ | Especifica o número de segundos que um cliente aguarda dados em um | | recebimento de TCP/IP. | | Não existe nenhum tempo limite se a variável de registro não | | estiver definida ou estiver definida como 0. Se o recebimento de | | TCP/IP for retornado com dados antes da expiração do valor de tempo | | limite, o aplicativo prosseguirá normalmente. Se o valor de tempo | | limite expirar antes do retorno dos dados, a conexão será fechada. | | | | Nota: Esta variável de registro é aplicável ao DB2 Client e ao lado | | do cliente do DB2 Gateway apenas. Ela não é aplicável ao DB2 | | Server. | +---------------------------------------------------------------------+ Nova Variável de Desempenho A variável de desempenho DB2_LARGE_PAGE_MEM foi incluída na Versão 8.2. Tabela 13. Variáveis de Desempenho +----------------------+-------------------+--------------------------+ | Nome da Variável | Sistemas | Valores | | | Operacionais | | +---------------------------------------------------------------------+ | Descrição | +----------------------+-------------------+--------------------------+ | DB2_LARGE_PAGE_MEM | AIX 5.x de 64 | Default=NULL | | | bits apenas | Utilize * para indicar | | | | que todas as regiões de | | | Linux | memória aplicáveis devem | | | | utilizar a memória de | | | | páginas grandes ou uma | | | | lista separada por | | | | vírgulas de regiões de | | | | memória específicas que | | | | devem utilizar memória | | | | de páginas grandes. As | | | | regiões disponíveis | | | | variam por sistema | | | | operacional. No AIX 5.x | | | | de 64 bits, as regiões a | | | | seguir podem ser | | | | especificadas: DB, DBMS | | | | ou PRIVATE. No Linux, a | | | | região a seguir pode ser | | | | especificada: DB. | +---------------------------------------------------------------------+ | A memória de páginas grandes é suportada apenas para o DB2 UDB | | (Universal Database) para AIX 5L, Edição de 64 bits e DB2 UDB para | | Linux. | | A variável de registro DB2_LARGE_PAGE_MEM é utilizada para ativar o | | suporte a páginas grandes quando em execução no AIX 5.x ou em | | qualquer arquitetura Linux com o suporte kernel apropriado. Essa | | variável de registro desaprova a variável de registro DB2_LGPAGE_BP | | , que pode ser utilizada apenas para ativar a memória de páginas | | grandes para a região de memória compartilhada do banco de dados. | | Isso pode, agora, ser ativado definindo DB2_LARGE_PAGE_MEM=DB. | | Qualquer documentação que menciona a ativação de páginas grandes | | com a variável de registro DB2_LGPAGE_BP pode ser tratada como | | sinônimo da definição DB2_LARGE_PAGE_MEM=DB. | | O uso de páginas grandes é destinado principalmente a fornecer | | aperfeiçoamentos de desempenho para aplicativos de cálculo de alto | | desempenho. Os aplicativos de acesso intenso à memória que utilizam | | grandes quantidades de memória virtual podem obter aperfeiçoamentos | | de desempenho utilizando páginas grandes. Para permitir que o DB2 | | UDB utilize páginas grandes, primeiro é necessário configurar o | | sistema operacional para utilizar páginas grandes. | | Ativar páginas privadas grandes aumentará o uso de memória do DB2 | | UDB significativamente, pois cada agente do DB2 UDB consumirá pelo | | menos 1 página grande (16 MB) de memória física. Para permitir | | páginas grandes para a memória privada do agente no DB2 UDB para | | AIX de 64 bits (a definição DB2_LARGE_PAGE_MEM=PRIVATE), as | | condições a seguir devem ser atendidas, além da configuração de | | páginas grandes no sistema operacional: | | * O proprietário da instância deve possuir os recursos | | CAP_BYPASS_RAC_VMM e CAP_PROPOGATE. | | * O kernel deve suportar interfaces que permitem que um processo | | modifique seu tamanho de página no tempo de execução. . | | No DB2 UDB para AIX de 64 bits, a ativação dessa variável reduz o | | tamanho do segmento de memória compartilhada voltando a memória do | | banco de dados para o requisito mínimo. O padrão é criar um | | segmento de 64 GB: consulte o parâmetro de configuração do banco de | | dados (database_memory) do tamanho da memória compartilhada do | | banco de dados para obter detalhes adicionais. Isto evita a | | retenção de mais memória compartilhada em RAM do que provavelmente | | será utilizada. | | Definindo esta variável, a capacidade para aumentar dinamicamente a | | configuração de memória compartilhada do banco de dados geral (por | | exemplo, para aumentar o tamanho de conjuntos de buffers) será | | limitada. | | No Linux, há um requisito adicional para a disponibilidade da | | biblioteca libcap.so. Esta biblioteca deve ser instalada para que | | esta opção funcione. Se esta opção estiver ativada e a biblioteca | | não estiver no sistema, o DB2 UDB desativará as páginas grandes do | | kernel e continuará funcionando como anteriormente. | | No Linux, para verificar se as páginas grandes do kernel estão | | disponíveis, emita o comando a seguir: | | cat /proc/meminfo | | | | Se elas estiverem disponíveis, devem aparecer três linhas (com | | números diferentes, dependendo da quantidade de memória configurada | | em sua máquina): | | HugePages_Total: 200 | | HugePages_Free: 200 | | Hugepagesize: 16384 KB | | | | Se estas linhas não aparecerem, ou se HugePages_Total for 0, será | | requerida a configuração do sistema operacional ou do kernel. | +---------------------------------------------------------------------+ Variáveis do Compilador SQL A atualização a seguir aplica-se ao tópico "SQL compiler variables" no Apêndice A "DB2 Registry and Environment Variables" do Administration Guide: Performance: Quando uma ou ambas as variáveis de compilador do DB2 DB2_MINIMIZE_LISTPREFETCH e DB2_INLIST_TO_NLJN, estiverem definidas para ON, elas permanecerão ativas mesmo se REOPT(ONCE) for especificado. Atualizações de Parâmetros de Configuração A seguir são apresentadas as atualizações para a documentação dos parâmetros de configuração: Authentication - Tipo de Autenticação O parâmetro de configuração do gerenciador de banco de dados do tipo de autenticação (authentication) também aceita os valores a seguir: * DATA_ENCRYPT O servidor aceita esquemas de autenticação SERVER criptografados e a criptografia de dados do usuário. A autenticação funciona exatamente da mesma forma que SERVER_ENCRYPT. Os dados de usuário a seguir são criptografados ao utilizar esse tipo de autenticação: * Instruções SQL. * Dados da variável do programa SQL. * Dados de saída do servidor processando uma instrução SQL e incluindo uma descrição dos dados. * Alguns ou todos os dados de conjuntos de respostas resultantes de uma consulta. * Fluxo de dados LOB (Large Object). * Descritores SQLDA. * DATA_ENCRYPT_CMP O servidor aceita esquemas de autenticação SERVER criptografados e a criptografia de dados do usuário. Além disso, esse tipo de autenticação permite a compatibilidade com produtos anteriores que não suportam o tipo de autenticação DATA_ENCRYPT. Esses produtos têm permissão para se conectarem ao tipo de autenticação SERVER_ENCRYPT e sem criptografar dados do usuário. Os produtos que suportam o novo tipo de autenticação devem utilizá-lo. Esse tipo de autenticação é válido apenas no arquivo de configuração do gerenciador de banco de dados do servidor e não é válido quando utilizado no comando CATALOG DATABASE. util_impact_lim - Política de Impacto da Instância A partir do DB2 Universal Database Versão 8.2, o valor padrão do parâmetro de configuração do gerenciador de banco de dados da Política de Impacto da Instância (util_impact_lim) é alterado de 100 para 10. sysadm_group, sysmaint_group, sysctrl_group, sysmon_group Os parâmetros de configuração do gerenciador de banco de dados a seguir podem aceitar nomes de grupos de 30 bytes (ou menos) em todas as plataformas: * Nome de grupo de autoridade de administração do sistema (sysadm_group) * Nome de grupo de autoridade de manutenção do sistema (sysmaint_group) * Nome de autoridade de grupo de controle do sistema (sysctrl_group) * Nome de grupo de autoridade de monitoração do sistema (sysmon_group) A tabela no tópico "Resumo dos parâmetros de configuração do gerenciador de banco de dados" contém tipos de dados incorretos para esses parâmetros de configuração do gerenciador de banco de dados. O valor correto em todos os casos é char(30). estore_seg_sz - Tamanho do Segmento de Memória de Armazenamento Estendido O tamanho máximo para o parâmetro de configuração do Banco de dados de tamanho do segmento de memória de armazenamento estendido (estore_seg_size) em plataformas baseadas no Windows é 16 777 216. hadr_timeout - Valor de Tempo Limite de HADR O limite superior correto do parâmetro de configuração do banco de dados de valor do tempo limite de HADR (hadr_timeout) é 4 294 967 295. locklist - Armazenamento Máximo para a locklist A documentação para o parâmetro de configuração do banco de dados de Armazenamento máximo para locklist (locklist) afirma que o valor máximo para servidores Windows de 64 e de 32 bits que atendem apenas clientes locais é 60 000. Este valor é incorreto e deve ser 524 288. num_db_backups - Número de Backups de Banco de Dados O intervalo de valores para o parâmetro de configuração de banco de dados Número de backups de banco de dados (num_db_backups) é incorreto. O intervalo correto é de 0 - 32 767. Arquivo de Parâmetro de Configuração de Banco de Dados SQLDBCONF Depois de migrar para o DB2 UDB (Universal Database) Versão 8.2 da Versão 8.1, o DB2 UDB utiliza um novo arquivo de parâmetro de configuração de banco de dados de 16 KB denominado SQLDBCONF. (Na Versão 8.1, o arquivo de parâmetro de configuração de banco de dados era apenas 4 KB e era denominado SQLDBCON). Alteração no Valor Padrão DB2_HASH_JOIN A partir da Versão 8.1, a variável de registro DB2_HASH_JOIN é definida para ON por padrão. A variável hash-join deve ser utilizada, mas ela precisa ser ajustada para obter o melhor desempenho. O desempenho de hash-join será o melhor se você puder evitar loops de hash e estouro para o disco. Para ajustar o desempenho de hash-join, faça a estimativa da quantidade máxima de memória disponível para o parâmetro sheapthres e, em seguida, ajuste o parâmetro sortheap. Aumente seu valor até evitar tantos loops de hash e estouros de disco quanto for possível, mas não atinja o limite especificado pelo parâmetro sheapthres. Para obter informações adicionais, consulte o tópico "Join methods" no manual Administration Guide: Performance. A Variável de Registro DB2NTNOCACHE É Reprovada A funcionalidade obtida anteriormente através de DB2NTNOCACHE pode ser obtida no nível do espaço de tabelas, especificando a cláusula NO FILE SYSTEM CACHING na instrução CREATE TABLESPACE ou ALTER TABLESPACE. Consulte o SQL Reference para obter detalhes sobre o uso. A variável de registro DB2NTNOCACHE será removida em um release futuro. Tabelas de Explicação e Organização de Informações de Explicação As tabelas de explicação podem ser comuns a mais de um usuário. No entanto, as tabelas de explicação podem ser definidas para um usuário e os aliases podem ser definidos para cada usuário adicional, utilizando o mesmo nome para apontar para as tabelas definidas. Como alternativa, as tabelas de explicação podem ser definidas no esquema SYSTOOLS. O recurso de Explicação assumirá o esquema SYSTOOLS como padrão se não forem encontradas outras tabelas de explicação ou aliases no ID de sessão do usuário para SQL dinâmico, ou no ID de autorização de instrução para SQL estático. Cada usuário que compartilha as tabelas de explicação comuns deve ter permissão de inserção nestas tabelas. A permissão de leitura para as tabelas de explicação comuns também deve ser limitada, geralmente para usuários que analisam as informações de explicação. Diretrizes para Captura de Informações de Explicação Os dados de explicação serão capturados se você solicitá-los durante a compilação de uma instrução SQL. Considere como você espera utilizar as informações capturadas quando solicitar dados de explicação. Capturando Informações nas Tabelas de Explicação * Instruções SQL dinâmicas: As informações de tabelas de explicação são capturadas em qualquer um dos seguintes casos: * O registro especial CURRENT EXPLAIN MODE está definido como: * YES: O compilador SQL captura dados de explicação e executa a instrução SQL. * EXPLAIN: O compilador SQL captura dados de explicação, mas não executa a instrução SQL. * RECOMMEND INDEXES: O compilador SQL captura dados de explicação e os índices recomendados são colocados na tabela ADVISE_INDEX, mas a instrução SQL não é executada. * EVALUATE INDEXES: O compilador SQL utiliza índices colocados pelo usuário na tabela ADVISE_INDEX para avaliação. No modo EVALUATE INDEXES, todas as instruções dinâmicas são explicadas como se estes índices virtuais estivessem disponíveis. O compilador SQL então optará por utilizar os índices virtuais se eles aprimorarem o desempenho das instruções. Do contrário, os índices serão ignorados. Para saber se os índices propostos são úteis, reveja os resultados de EXPLAIN. * REOPT: O compilador SQL captura dados de Explicação para instruções SQL estáticas ou dinâmicas durante a reotimização de instruções no tempo de execução, quando os valores reais para as variáveis do host, registros especiais ou marcadores de parâmetros estiverem disponíveis. * A opção EXPLAIN ALL foi especificada no comando BIND ou PREP. O compilador SQL captura dados de explicação para SQL dinâmico no tempo de execução, mesmo que o registro especial CURRENT EXPLAIN MODE esteja definido como NO. A instrução SQL também executa e retorna os resultados da consulta. Códigos de Retorno Adicionais da API db2CfgGet, Parâmetro collate_info O parâmetro de informações de intercalação pode ser exibido apenas utilizando a API db2CfgGet. Ele não pode ser exibido através do processador de linha de comando ou do Centro de Controle. Tipo de Configuração Banco de Dados Tipo de Parâmetro Informativo Este parâmetro fornece 260 bytes de informações de intercalação do banco de dados. Os primeiros 256 bytes especificam a seqüência de intercalação do banco de dados, na qual o byte "n" contém o peso de classificação do ponto de código cuja representação decimal subjacente é "n" na página de códigos do banco de dados. Os últimos 4 bytes contêm informações internas sobre o tipo de seqüência de intercalação. Os últimos 4 bytes de collate_info são um inteiro. O inteiro é sensível à ordem endian da plataforma. Os valores possíveis são: * 0 - A seqüência contém pesos não exclusivos * 1 - A seqüência contém todos os pesos exclusivos * 2 - A seqüência é a seqüência de identidade, para a qual as cadeias são comparadas byte a byte. * 3 - A seqüência é NLSCHAR, utilizada para classificar caracteres em um banco de dados Tai TIS620-1 (página de códigos 874). * 4 - A seqüência é IDENTITY_16BIT, que implementa o algoritmo "CESU-8 Compatibility Encoding Scheme for UTF-16: 8 Bits conforme especificado no Unicode Technical Report #26, disponível no Web site Unicode Technical Consortium no endereço http://www.unicode.org. * X'8001' - A seqüência é UCA400_NO, que implementa o UCA (Unicode Collation Algorithm) com base no Unicode Standard versão 4.00, com a normalização implicitamente definida como ON. * X'8002' - A seqüência é UCA400_LTH, que implementa o UCA (Unicode Collation Algorithm) com base no Unicode Standard versão 4.00 e classifica todos os caracteres Tai de acordo com o Royal Thai Dictionary. * X'8003' - A seqüência é UCA400_LSK. que implementa o UCA (Unicode Collation Algorithm) com base no Unicode Standard versão 4.00 e classifica todos os caracteres eslovacos corretamente. Se você utilizar estas informações de tipo internas, será necessário considerar a reversão de bytes ao recuperar informações para um banco de dados em uma plataforma diferente. Você pode especificar a seqüência de intercalação no momento da criação do banco de dados. Definição Automática do Tamanho Padrão de Pré-busca e Padrões de Atualização A partir do DB2 UDB (Universal Database) Versão 8.2, você pode utilizar o tamanho da pré-busca AUTOMATIC para um espaço de tabelas. O DB2 UDB atualiza automaticamente o tamanho da pré-busca quando o número de contêineres é alterado para o espaço de tabelas. A sintaxe da variável de registro DB2_PARALLEL_IO é expandida para reconhecer contêineres com diferentes características de paralelismo de E/S. Através da sintaxe expandida, os contêineres para diferentes espaços de tabela podem ter diferentes características de paralelismo de E/S. A característica de paralelismo de E/S de cada espaço de tabelas será utilizada quando um tamanho de pré-busca AUTOMATIC for especificado para o espaço de tabelas. Se a variável de registro DB2_PARALLEL_IO estiver ativada, mas a sintaxe expandida que identifica as características de paralelismo de E/S específicas para os espaços de tabela não for utilizada, será assumido um nível de paralelismo padrão. O nível padrão é RAID 5 (6+1). As informações do tamanho da pré-busca utilizadas pelo otimizador são atualizadas apenas quando uma instrução ALTER TABLESPACE que altera o tamanho da pré-busca de um espaço de tabelas ou altera o número de contêineres (utilizando ADD/DROP/BEGIN NEW STRIPE SET/ADD TO NEW STRIPE SET) é emitida. Se as definições de registro de número de discos físicos por contêiner forem alteradas, uma instrução ALTER TABLESPACE PREFETCHSIZE AUTOMATIC deve ser emitida para atualizar as informações do otimizador (a não ser que uma instrução ALTER TABLESPACE que atualize as informações do otimizador já esteja emitida). Se um espaço de tabelas for redirecionado ou restaurado para utilizar um número diferente de contêineres, atualize as informações do otimizador emitindo uma instrução ALTER TABLESPACE PREFETCHSIZE AUTOMATIC. Caso existam múltiplos conjuntos de faixa dentro de um espaço de tabelas, o número de contêineres máximo entre os conjuntos de faixa será utilizado para calcular o tamanho de pré-busca. Se o tamanho da pré-busca calculado exceder o tamanho máximo (32.767 páginas), o maior múltiplo do número de contêineres que seja menor que o máximo será utilizado como o tamanho da pré-busca. Em um ambiente do DB2 UDB Enterprise Server Edition, se um espaço de tabelas utilizar um tamanho de pré-busca AUTOMATIC, o tamanho da pré-busca poderá ser diferente em diferentes partições de um banco de dados. Essa situação ocorre porque diferentes partições de banco de dados podem ter números diferentes de contêineres utilizados para calcular o tamanho da pré-busca. Para gerar o plano de consulta de acesso, o otimizador utiliza o tamanho de pré-busca a partir da primeira partição em um grupo de partição de banco de dados. Administração: Planejamento Tabelas Armazenadas em Cluster no Intervalo Uma tabela armazenada em cluster não pode ser criada em um banco de dados que possui mais de uma partição. Design de Espaço de Tabelas de Catálogo Ao criar um banco de dados, três espaços de tabelas são definidos, incluindo o espaço de tabelas SYSCATSPACE para as tabelas de catálogo do sistema. O tamanho da página que se torna o padrão para todos os espaços de tabelas é definido ao criar o banco de dados. Se um tamanho da página maior de 4096 ou 4 K é escolhido, o tamanho da página para as tabelas de catálogo é restrito a um tamanho de linha necessário, se o espaço de tabelas de catálogo possui um tamanho da página de 4 K. O tamanho da página do banco de dados padrão é armazenado como um parâmetro de configuração de banco de dados informativo, denominado pagesize. Códigos de Território e Páginas de Código Suportados No Apêndice B, "NLS (National Language Support)" no Administration Guide: Planning, o tópico chamado "Supported territory codes and code pages" possui tabelas para cada território. Duas tabelas requerem atualizações: China (PRC), Identificador de Território: CN A página de códigos para a linha GBK do Linux na tabela "China (PRC), identificador de território: CN" deve ser alterada de 1383 para 1386. Isto é, a linha, agora, deve ler: 1386 D-4 GBK 86 zh_CN.GBK Linux(R) Japão, Identificador de Território: JP A tabela para " Japão, identificador de território: JP" foi revisada. O nome do código de idioma a seguir deve ser removido: 954 D-1 eucJP 81 japanese Solaris Aqui está a tabela revisada: Tabela 14. Japão, Identificador de Território: JP +----------+----------+----------+----------+---------------+---------+ | Página | Grupo | Conjunto | Código | Local | Sistema | | de | | de | do | | Operaci | | Códigos | | Códigos | Territór | | onal | | | | | io | | | +----------+----------+----------+----------+---------------+---------+ | 932 | D-1 | IBM-932 | 81 | Ja_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | Ja_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | | 81 | ja_JP | AIX | | | | IBM-eucJ | | | | | | | P | | | | +----------+----------+----------+----------+---------------+---------+ | 1208 | N-1 | UTF-8 | 81 | JA_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 930 | D-1 | IBM-930 | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 939 | D-1 | IBM-939 | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 5026 | D-1 | | 81 | - | Host | | | | IBM-5026 | | | | +----------+----------+----------+----------+---------------+---------+ | 5035 | D-1 | | 81 | - | Host | | | | IBM-5035 | | | | +----------+----------+----------+----------+---------------+---------+ | 1390 | D-1 | | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 1399 | D-1 | | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.eucJP | HP-UX | +----------+----------+----------+----------+---------------+---------+ | 5039 | D-1 | SJIS | 81 | ja_JP.SJIS | HP-UX | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | EUC-JP | 81 | ja_JP | Linux | +----------+----------+----------+----------+---------------+---------+ | 932 | D-1 | IBM-932 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 942 | D-1 | IBM-942 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.EUC | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.eucJP | SCO | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | ja_JP.PCK | Solaris | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja | Solaris | +----------+----------+----------+----------+---------------+---------+ | 1208 | N-1 | UTF-8 | 81 | ja_JP.UTF-8 | Solaris | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | - | Windows | +----------+----------+----------+----------+---------------+---------+ | 1394 | D-1 | | 81 | - | | +----------+----------+----------+----------+---------------+---------+ Função XA Suportada pelo DB2 Universal Database O DB2 UDB (Universal Database) suporta a especificação XA91 definida em X/Open CAE Specification Distributed Transaction Processing: The XA Specification, com as seguintes exceções: * Serviços Assíncronos A especificação XA permite que a interface utilize serviços assíncronos, de forma que o resultado de um pedido possa ser verificado posteriormente. O gerenciador do banco de dados requer que os pedidos sejam chamados no modo síncrono. * Registro A interface XA permite duas formas de registrar um RM: registro estático e registro dinâmico. O DB2 UDB suporta os registros dinâmico e estático. O DB2 UDB fornece dois comutadores: * db2xa_switch para registro dinâmico * db2xa_switch_static para registro estático * Migração de associação O DB2 UDB não suporta a migração de transação entre encadeamentos de controle. Uso e Local do Comutador XA Conforme requerido pela interface XA, o gerenciador do banco de dados fornece uma variável C externa de db2xa_switch e db2xa_switch_static de tipo xa_switch_t para retornar a estrutura do comutador XA ao TM. Diferente dos endereços de várias funções de XA, são retornados os seguintes campos: Campo Valor name O nome do produto do gerenciador de banco de dados. Por exemplo, DB2 UDB para AIX. flags Para db2xa_switch TMREGISTER | TMNOMIGRATE está definido Afirma explicitamente que o DB2 UDB utiliza o registro dinâmico e que a TM não deve utilizar a migração de associação. Indica implicitamente que a operação assíncrona não é suportada. Para db2xa_switch_static TMNOMIGRATE está definido Afirma explicitamente que o DB2 UDB utiliza o registro dinâmico e que a TM não deve utilizar a migração de associação. Indica implicitamente que a operação assíncrona não é suportada. version Deve ser zero. Utilizando o Comutador XA do DB2 Universal Database A arquitetura XA requer que um RM (Resource Manager) forneça um comutador que conceda ao TM (Transaction Manager) XA acesso às rotinas xa_ do RM. Um comutador RM utiliza uma estrutura chamada xa_switch_t. O comutador contém o nome do RM, ponteiros não-NULL para os pontos de entrada XA do RM, um sinalizador e um número de versão. Sistemas Baseados em Linux- e UNIX- O comutador para o DB2 UDB (Universal Database) pode ser obtido através de qualquer uma das duas formas a seguir: * Através de um nível adicional de falta de direção. Em um programa C, isto pode ser feito definindo a macro: #define db2xa_switch (*db2xa_switch) #define db2xa_switch_static (*db2xa_switch) antes de utilizar db2xa_switch ou db2xa_switch_static. * Chamando db2xacic ou db2xacicst O DB2 UDB fornece essas APIs, que retornam o endereço da estrutura db2xa_switch ou db2xa_switch_static. Esta função é um protótipo como: struct xa_switch_t * SQL_API_FN db2xacic( ) struct xa_switch_t * SQL_API_FN db2xacicst( ) Com qualquer método, é necessário vincular seu aplicativo a libdb2. Windows NT O ponteiro para a estrutura xa_switch, db2xa_switch ou db2xa_switch_static é exportado como dados DLL. Isso implica que um aplicativo do Windows NT que utiliza essa estrutura deve se referir a ela de uma de três formas: * Através de um nível adicional de falta de direção. Em um programa C, isto pode ser feito definindo a macro: #define db2xa_switch (*db2xa_switch) #define db2xa_switch_static (*db2xa_switch) antes de utilizar db2xa_switch ou db2xa_switch_static. * Se estiver utilizando o compilador Microsoft Visual C++, db2xa_switch ou db2xa_switch_static pode ser definido como: extern __declspec(dllimport) struct xa_switch_t db2xa_switch extern __declspec(dllimport) struct xa_switch_t db2xa_switch_static * Chamando db2xacic ou db2xacicst O DB2 UDB fornece essa API, que retorna o endereço da estrutura db2xa_switch ou db2xa_switch_static. Esta função é um protótipo como: struct xa_switch_t * SQL_API_FN db2xacic( ) struct xa_switch_t * SQL_API_FN db2xacicst( ) Com qualquer um destes métodos, é necessário vincular seu aplicativo a db2api.lib. Código C de Exemplo O código a seguir ilustra as diferentes formas nas quais o db2xa_switch ou o db2xa_switch_static pode ser acessado através de um programa C em qualquer plataforma do DB2 UDB. Certifique-se de vincular o aplicativo à biblioteca apropriada. #include #include struct xa_switch_t * SQL_API_FN db2xacic( ); #ifdef DECLSPEC_DEFN extern __declspec(dllimport) struct xa_switch_t db2xa_switch; #else #define db2xa_switch (*db2xa_switch) extern struct xa_switch_t db2xa_switch; #endif main( ) { struct xa_switch_t *foo; printf ( "%s \n", db2xa_switch.name ); foo = db2xacic(); printf ( "%s \n", foo->name ); return ; } Valores de TPM e tp_mon_name Atualizados para Formatos de Cadeia xa_open A coluna Configurações internas na tabela a seguir foi atualizada para refletir configurações para o TOC (Thread Of Control). TOC é a entidade à qual todas as conexões XA do DB2 UDB são ligadas: * Quando definidas para um valor de T, todas as conexões XA do DB2 UDB formadas em um encadeamento de S.O. particular são exclusivas para aquele encadeamento. Vários encadeamentos não podem compartilhar conexões do DB2 UDB. Cada encadeamento de S.O. deve formar seu próprio conjunto de conexões XA do DB2 UDB. * Quando definidas para um valor de P, todas as conexões XA do DB2 UDB são exclusivas para o Processo do S.O. e todas as conexões XA podem ser compartilhadas entre encadeamentos de S.O. Tabela 15. Valores Válidos para TPM e tp_mon_name +-----------------+----------------+----------------------------------+ | Valor TPM | Produto do | Configurações Internas | | | Monitor TP | | +-----------------+----------------+----------------------------------+ | CICS | IBM TxSeries | AXLIB=libEncServer (para | | | CICS | Windows) | | | | =/usr/lpp/encina/lib/libEncServ | | | | er | | | | (para sistemas Linux e UNIX) | | | | HOLD_CURSOR=T | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | ENCINA | IBM TxSeries | AXLIB=libEncServer (para | | | Encina monitor | Windows) | | | | =/usr/lpp/encina/lib/libEncServ | | | | er | | | | (para sistemas Linux e UNIX) | | | | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | MQ | IBM MQSeries | AXLIB=mqmax | | | | (para Windows) | | | | =/usr/mqm/lib/libmqmax_r.a | | | | (para aplicativos encadeados do | | | | AIX) | | | | =/usr/mqm/lib/libmqmax.a | | | | (para aplicativos não-encadeados | | | | AIX) | | | | =/opt/mqm/lib/libmqmax.so | | | | (para Solaris) | | | | =/opt/mqm/lib/libmqmax_r.sl | | | | (para aplicativos encadeados HP) | | | | =/opt/mqm/lib/libmqmax.sl | | | | (para aplicativos não-encadeados | | | | HP) | | | | =/opt/mqm/lib/libmqmax_r.so | | | | (para aplicativos encadeados do | | | | Linux) | | | | =/opt/mqm/lib/libmqmax.so | | | | (para aplicativos não-encadeados | | | | Linux) | | | | HOLD_CURSOR=F | | | | CHAIN_END=F | | | | SUSPEND_CURSOR=F | | | | TOC=P | +-----------------+----------------+----------------------------------+ | CB | IBM Component | AXLIB=somtrx1i (para Windows) | | | Broker | =libsomtrx1 | | | | (para sistemas Linux e UNIX) | | | | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | SF | IBM San | AXLIB=ibmsfDB2 | | | Francisco | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | TUXEDO | BEA Tuxedo | AXLIB=libtux | | | | HOLD_CURSOR=F | | | | CHAIN_END=F | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | MTS | Microsoft | Não é necessário configurar o | | | Transaction | DB2 UDB para MTS. O MTS é | | | Server | detectado automaticamente pelo | | | | driver ODBC do DB2 UDB. | +-----------------+----------------+----------------------------------+ | JTA | Java | Não é necessário configurar o | | | Transaction | DB2 UDB para EJS (Enterprise | | | API | Java Servers) como IBM | | | | WebSphere. O driver DB2 UDB JDBC | | | | detecta automaticamente este | | | | ambiente. Portanto, este valor | | | | TPM é ignorado. | +-----------------+----------------+----------------------------------+ Ativando Tabelas de Conversão para Páginas de Códigos 923 e 924 A tabela a seguir contém uma lista de todos os arquivos de tabelas de conversão de páginas de códigos que estão associados às páginas de códigos 923 e 924. Cada arquivo está no formato XXXXYYYY.cnv ou ibmZZZZZ.ucs, em que XXXXX é o número da página de códigos de origem e YYYY é o número da página de códigos de destino. O arquivo ibmZZZZZ.ucs suporta a conversão entre a página de códigos ZZZZZ e Unicode. Procedimento Para ativar uma determinada tabela de conversão de páginas de códigos, renomeie ou copie esse arquivo de tabela de conversão para seu novo nome, conforme mostrado na segunda coluna. Por exemplo, para suportar o símbolo do euro ao conectar um cliente 8859-1/15 (Latim 1/9) a um banco de dados 1252 do Windows, é necessário renomear ou copiar os arquivos da tabela de conversão da página de códigos a seguir no diretório sqllib/conv/: * 09231252.cnv para 08191252.cnv * 12520923.cnv para 12520819.cnv * ibm00923.ucs para ibm00819.ucs Tabela 16. Arquivos de Tabelas de Conversão para Páginas de Códigos 923 e 924 +----------------------------------+----------------------------------+ | Arquivos de Tabelas de Conversão | Novo Nome | | 923 e 924 no Diretório | | | sqllib/conv/ | | +----------------------------------+----------------------------------+ | 04370923.cnv | 04370819.cnv | +----------------------------------+----------------------------------+ | 08500923.cnv | 08500819.cnv | +----------------------------------+----------------------------------+ | 08600923.cnv | 08600819.cnv | +----------------------------------+----------------------------------+ | 08630923.cnv | 08630819.cnv | +----------------------------------+----------------------------------+ | 09230437.cnv | 08190437.cnv | +----------------------------------+----------------------------------+ | 09230850.cnv | 08190850.cnv | +----------------------------------+----------------------------------+ | 09230860.cnv | 08190860.cnv | +----------------------------------+----------------------------------+ | 09231043.cnv | 08191043.cnv | +----------------------------------+----------------------------------+ | 09231051.cnv | 08191051.cnv | +----------------------------------+----------------------------------+ | 09231114.cnv | 08191114.cnv | +----------------------------------+----------------------------------+ | 09231252.cnv | 08191252.cnv | +----------------------------------+----------------------------------+ | 09231275.cnv | 08191275.cnv | +----------------------------------+----------------------------------+ | 09241252.cnv | 10471252.cnv | +----------------------------------+----------------------------------+ | 10430923.cnv | 10430819.cnv | +----------------------------------+----------------------------------+ | 10510923.cnv | 10510819.cnv | +----------------------------------+----------------------------------+ | 11140923.cnv | 11140819.cnv | +----------------------------------+----------------------------------+ | 12520923.cnv | 12520819.cnv | +----------------------------------+----------------------------------+ | 12750923.cnv | 12750819.cnv | +----------------------------------+----------------------------------+ | ibm00923.ucs | ibm00819.ucs | +----------------------------------+----------------------------------+ Arquivos de Tabela de Conversão para Páginas de Código Compatíveis com Euro As tabelas a seguir listam as tabelas de conversão que foram aperfeiçoadas para suportar o símbolo da moeda euro. Se desejar desativar o suporte ao símbolo do euro, faça download do arquivo da tabela de conversão indicado na coluna "Arquivos de Tabelas de Conversão". Árabe +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1046, 9238 | 08641046.cnv, | | | | 10460864.cnv, | | | | IBM00864.ucs | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1256, 5352 | 08641256.cnv, | | | | 12560864.cnv, | | | | IBM00864.ucs | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1200, 1208, 13488, | IBM00864.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 864, 17248 | 10460864.cnv, | | | | 08641046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1089 | 10461089.cnv, | | | | 10891046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1256, 5352 | 10461256.cnv, | | | | 12561046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1200, 1208, 13488, | IBM01046.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1089 | 1046, 9238 | 10891046.cnv, | | | | 10461089.cnv | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 864, 17248 | 12560864.cnv, | | | | 08641256.cnv, | | | | IBM01256.ucs | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 1046, 9238 | 12561046.cnv, | | | | 10461256.cnv, | | | | IBM01256.ucs | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 1200, 1208, 13488, | IBM01256.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Báltico +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 921, 901 | 1257 | 09211257.cnv, | | | | 12570921.cnv, | | | | IBM00921.ucs | +-------------------+----------------------+--------------------------+ | 921, 901 | 1200, 1208, 13488, | IBM00921.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 921, 901 | 12570921.cnv, | | | | 09211257.cnv, | | | | IBM01257.ucs | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 922, 902 | 12570922.cnv, | | | | 09221257.cnv, | | | | IBM01257.ucs | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 1200, 1208, 13488, | IBM01257.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Bielorrússia +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 1131, 849 | 1251, 5347 | 11311251.cnv, | | | | 12511131.cnv | +-------------------+----------------------+--------------------------+ | 1131, 849 | 1283 | 11311283.cnv | +-------------------+----------------------+--------------------------+ Cirílico +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 855, 872 | 866, 808 | 08550866.cnv, | | | | 08660855.cnv | +-------------------+----------------------+--------------------------+ | 855, 872 | 1251, 5347 | 08551251.cnv, | | | | 12510855.cnv | +-------------------+----------------------+--------------------------+ | 866, 808 | 855, 872 | 08660855.cnv, | | | | 08550866.cnv | +-------------------+----------------------+--------------------------+ | 866, 808 | 1251, 5347 | 08661251.cnv, | | | | 12510866.cnv | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 855, 872 | 12510855.cnv, | | | | 08551251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 866, 808 | 12510866.cnv, | | | | 08661251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1124 | 12511124.cnv, | | | | 11241251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1125, 848 | 12511125.cnv, | | | | 11251251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1131, 849 | 12511131.cnv, | | | | 11311251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1200, 1208, 13488, | IBM01251.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Estônia +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 922, 902 | 1257 | 09221257.cnv, | | | | 12570922.cnv, | | | | IBM00922.ucs | +-------------------+----------------------+--------------------------+ | 922, 902 | 1200, 1208, 13488, | IBM00922.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Grego +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 813, 4909 | 869, 9061 | 08130869.cnv, | | | | 08690813.cnv, | | | | IBM00813.ucs | +-------------------+----------------------+--------------------------+ | 813, 4909 | 1253, 5349 | 08131253.cnv, | | | | 12530813.cnv, | | | | IBM00813.ucs | +-------------------+----------------------+--------------------------+ | 813, 4909 | 1200, 1208, 13488, | IBM00813.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 869, 9061 | 813, 4909 | 08690813.cnv, | | | | 08130869.cnv | +-------------------+----------------------+--------------------------+ | 869, 9061 | 1253, 5349 | 08691253.cnv, | | | | 12530869.cnv | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 813, 4909 | 12530813.cnv, | | | | 08131253.cnv, | | | | IBM01253.ucs | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 869, 9061 | 12530869.cnv, | | | | 08691253.cnv, | | | | IBM01253.ucs | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 1200, 1208, 13488, | IBM01253.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Hebraico +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 856, 9048 | 862, 867 | 08560862.cnv, | | | | 08620856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 916 | 08560916.cnv, | | | | 09160856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 1255, 5351 | 08561255.cnv, | | | | 12550856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 1200, 1208, 13488, | IBM0856.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 862, 867 | 856, 9048 | 08620856.cnv, | | | | 08560862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 916 | 08620916.cnv, | | | | 09160862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 1255, 5351 | 08621255.cnv, | | | | 12550862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 1200, 1208, 13488, | IBM00862.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 916 | 856, 9048 | 09160856.cnv, | | | | 08560916.cnv | +-------------------+----------------------+--------------------------+ | 916 | 862, 867 | 09160862.cnv, | | | | 08620916.cnv | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 856, 9048 | 12550856.cnv, | | | | 08561255.cnv, | | | | IBM01255.ucs | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 862, 867 | 12550862.cnv, | | | | 08621255.cnv, | | | | IBM01255.ucs | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 1200, 1208, 13488, | IBM01255.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Latim 1 +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 437 | 850, 858 | 04370850.cnv, | | | | 08500437.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 437 | 08500437.cnv, | | | | 04370850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 860 | 08500860.cnv, | | | | 08600850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 1114, 5210 | 08501114.cnv, | | | | 11140850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 1275 | 08501275.cnv, | | | | 12750850.cnv | +-------------------+----------------------+--------------------------+ | 860 | 850, 858 | 08600850.cnv, | | | | 08500860.cnv | +-------------------+----------------------+--------------------------+ | 1275 | 850, 858 | 12750850.cnv, | | | | 08501275.cnv | +-------------------+----------------------+--------------------------+ Latim 2 +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 852, 9044 | 1250, 5346 | 08521250.cnv, | | | | 12500852.cnv | +-------------------+----------------------+--------------------------+ | 1250, 5346 | 852, 9044 | 12500852.cnv, | | | | 08521250.cnv, | | | | IBM01250.ucs | +-------------------+----------------------+--------------------------+ | 1250, 5346 | 1200, 1208, 13488, | IBM01250.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Chinês Simplificado +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 837, 935, 1388 | 1200, 1208, 13488, | 1388ucs2.cnv | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1386 | 1200, 1208, 13488, | 1386ucs2.cnv, | | | 17584 | ucs21386.cnv | +-------------------+----------------------+--------------------------+ Chinês Tradicional +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 937, 835, 1371 | 950, 1370 | 09370950.cnv, | | | | 0937ucs2.cnv | +-------------------+----------------------+--------------------------+ | 937, 835, 1371 | 1200, 1208, 13488, | 0937ucs2.cnv | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1114, 5210 | 850, 858 | 11140850.cnv, | | | | 08501114.cnv | +-------------------+----------------------+--------------------------+ Tailândia +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 874, 1161 | 1200, 1208, 13488, | IBM00874.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Turco +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 857, 9049 | 1254, 5350 | 08571254.cnv, | | | | 12540857.cnv | +-------------------+----------------------+--------------------------+ | 1254, 5350 | 857, 9049 | 12540857.cnv, | | | | 08571254.cnv, | | | | IBM01254.ucs | +-------------------+----------------------+--------------------------+ | 1254, 5350 | 1200, 1208, 13488, | IBM01254.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Ucrânia +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 1124 | 1251, 5347 | 11241251.cnv, | | | | 12511124.cnv | +-------------------+----------------------+--------------------------+ | 1125, 848 | 1251, 5347 | 11251251.cnv, | | | | 12511125.cnv | +-------------------+----------------------+--------------------------+ Unicode +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 813, 4909 | IBM00813.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 862, 867 | IBM00862.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 864, 17248 | IBM00864.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 874, 1161 | IBM00874.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 921, 901 | IBM00921.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 922, 902 | IBM00922.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1046, 9238 | IBM01046.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1250, 5346 | IBM01250.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1251, 5347 | IBM01251.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1253, 5349 | IBM01253.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1254, 5350 | IBM01254.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1255, 5351 | IBM01255.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1256, 5352 | IBM01256.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1386 | ucs21386.cnv, | | 13488, 17584 | | 1386ucs2.cnv | +-------------------+----------------------+--------------------------+ Vietnamita +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs do | CCSIDs/CPGIDs do | Arquivos de Tabelas de | | Servidor de Banco | Cliente de Banco de | Conversão | | de Dados | Dados | | +-------------------+----------------------+--------------------------+ | 1258, 5354 | 1129, 1163 | 12581129.cnv | +-------------------+----------------------+--------------------------+ Referência da API Esclarecimento da Estrutura do Registro de Log A atualização deste documento aplica-se à Nota número 3 para Tabela 103. Incluir/Excluir/Não Atualizar Estrutura do Registro de Log do Registro do Campo Longo na seção denominada Registros de Log do Gerenciador de Campo Longo no tópico denominado Registros de Log do DB2 UDB. O texto para a Nota número 3 deve ser: 3. O comprimento dos dados do campo longo em setores de 512 bytes (o comprimento real dos dados é registrado como os primeiros 4 bytes do descritor LF, que é registrado no registro de log subseqüente inserir/excluir/atualizar como parte do registro de dados do usuário formatado). O valor desse campo é sempre positivo. O gerenciador do campo longo nunca grava registros de log para os dados do campo com comprimento zero que estão sendo inseridos, excluídos ou atualizados. Parâmetro oBackupsize da API db2Backup No DB2 DB2 V8, o parâmetro oBackupsize da API db2Backup considera backups completos e não backups delta ou incrementais. O parâmetro oBackupsize representa o tamanho da imagem de backup (em MB). Suporte à Opção SYNCPOINT A opção SYNCPOINT para as APIs sqlesetc, sqleqryc e sqlaprep é ignorada a partir da Versão 8; ela está disponível apenas para a compatibilidade reversa. Novo Campo para a Estrutura SQLEDBDESC Na API sqlecrea, foi incluído um novo campo para suportar Direct I/O. Nome do Campo Unsigned char sqlfscaching Descrição Armazenamento em cache do sistema de arquivos Valores 0 O armazenamento em cache do sistema de arquivos está ON para o espaço de tabelas atual 1 O armazenamento em cache do sistema de arquivos está OFF para o espaço de tabelas atual outros O armazenamento em cache do sistema de arquivos está ON para o espaço de tabelas atual Correção no Novo Campo na Estrutura SQLB-TBSPQRY-DATA Um novo campo, unsigned char fsCaching, foi incluído na estrutura SQLB-TBSPQRY-DATA. Este novo campo suporta Direct I/O. Embora o tamanho do bit reservado esteja documentado como 32 bits, o tamanho correto é de 31 bits. Desenvolvimento de Aplicativos: Construindo e Executando Aplicativos Amostras de Reconfiguração Dinâmica (AIX) Um novo arquivo de amostra, ibm_db2_sln_upart_smt, está disponível com o DB2 UDB(TM) (Universal Database) Versão 8.2 FixPak 3 (equivalente a V8.1 Fixpak 10). A tabela a seguir mostra o nome e a descrição do arquivo de amostra. Tabela 17. Scripts de Amostra de Configuração Dinâmica +-----------------+---------------------------------------------------+ | Nome do Script | Descrição do Arquivo | | de Amostra | | +-----------------+---------------------------------------------------+ | ibm_db2_sln_upa | Esse shell Korn de script de Reconfiguração | | rt_smt | Dinâmica (script DR) para AIX facilita o uso de | | | recursos DLPAR (Dynamic Logical Partitioning) | | | fornecidos com AIX Versão 5.3 executando em | | | sistemas pSeries(R) baseados em POWER5, como o p5 | | | 570 e p5 590. Esse script é semelhante ao script | | | DR ibm_db2_sln mas é otimizado para suportar | | | recursos POWER5(TM) e AIX V5.3 como um | | | microparticionamento e SMT. Informações | | | adicionais podem ser encontradas no script DR. | +-----------------+---------------------------------------------------+ O script de amostra ibm_db2_sln_upart_smt está no diretório sqllib/samples/DLPAR no DB2 UDB para AIX. Software de Desenvolvimento Suportado pelo Linux Para obter detalhes da instalação, consulte "Imagens de Instalação Kernel Linux 2.6" nas Notas sobre o Release DB2 UDB Versão 8.2.2 (seção Novo neste Release). As tabelas a seguir descrevem o suporte à arquitetura do DB2 Linux como parte do release do FixPak 9. Verifique o Web site de validação precedente para obter atualizações para esse suporte: http://www.ibm.com/db2/linux/validate Tabela 18. Linux no Intel(R) x86 (32 bits) +-----------------------------+---------+---------+-------------------+ | Distribuições | Kernel | Bibliot | Comentários | | | | eca | | +-----------------------------+---------+---------+-------------------+ | CLEE (Conectiva Linux | 2.4.19 | glibc | Desenvolvido em | | Enterprise Edition) | | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | LINX Rocky Secure Server | 2.4.21 | glibc | | | 2.1 | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Red Flag Advanced Server | 2.4.21- | glibc | | | 4.0 | as.2 | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | Red Flag Function Server | 2.4.20- | glibc | | | 4.0 | 8smp | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.9-e | glibc | | | 2.1 AS/ES/WS | 16 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.4.21- | glibc-2 | | | Linux) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.6.9 | glibc-2 | Também requer o | | Linux) 4 | | .3.3 | pacote | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SCO Linux 4.0 | 2.4.19 | glibc | Desenvolvido em | | | | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Pro 8.0 | 2.4.18 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | SuSE Pro 8.1 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.4.7 | glibc | | | Server) 7 | | 2.2.2 | | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.4.19 | glibc | Validado até o | | Server) 8 | | 2.2.5 | SuSE Service Pack | | | | | nível 2 | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux 7 Server | 2.4.9 | glibc | | | | | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux 8 Server | 2.4.18- | glibc | | | | 5 | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux Enterprise | 2.4.19 | glibc | | | Server 8 | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tabela 19. Distribuições Não-corporativas do Linux no Intel(R) x86 (32 bits) (Não Mais Suportadas pelo Fornecedor) +-----------------------------+---------+---------+-------------------+ | Distribuições | Kernel | Bibliot | Comentários | | | | eca | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.2 | 2.4.9-3 | glibc | | | | 4 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.3 | 2.4.18 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Red Hat 8.0 | 2.4.18- | glibc | | | | 14 | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | SuSE 7.3 | 2.4.10 | glibc | | | | | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ Tabela 20. Linux no s/390 e zSeries(R) (Versão do Kernel de 31 Bits Suportada no s/390; 64 Bits no zSeries) +-----------------------------+---------+---------+-------------------+ | Distribuições | Kernel | Bibliot | Comentários | | | | eca | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.2 | 2.4.9-3 | glibc | | | | 8 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.6.9 | glibc-2 | Também requer o | | Linux) 4 | | .3.3 | pacote | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.4.7-5 | glibc | compat.rpm contém | | Server) 7 | 8 | 2.2.4 | libstdc++ 6.1. | | | | | Utilize JDK 1.3.1 | | | | | SR 1 para | | | | | Java(TM) | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.4.19 | glibc | Desenvolvido em | | Server) 8 | | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | TLES (Turbo Linux | 2.4.19 | glibc | Desenvolvido em | | Enterprise Server) 8 | | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tabela 21. Linux no x86-64 +-----------------------------+---------+---------+-------------------+ | Distribuições | Kernel | Bibliot | Comentários | | | | eca | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.4.21- | glibc-2 | | | Linux) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.6.9 | glibc-2 | Também requer o | | Linux) 4 | | .3.3 | pacote | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.4.19- | glibc | | | Server) 8.0 | SMP | 2.2.5-1 | | | | | 6 | | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ Tabela 22. Linux on POWER(TM) (iSeries e pSeries(R)) +-----------------------------+---------+---------+-------------------+ | Distribuições | Kernel | Bibliot | Comentários | | | | eca | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.4.21- | glibc-2 | | | Linux) 3 AS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.6.9 | glibc-2 | Também requer o | | Linux) 4 | | .3.3 | pacote | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Enterprise | 2.4.19- | glibc | Desenvolvido em | | Server) 8 | 16 | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux Enterprise | 2.4.19- | glibc | Desenvolvido em | | Server 8 | 16 | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tabela 23. Linux no IA64 +-----------------------------+---------+---------+-------------------+ | Distribuições | Kernel | Bibliot | Comentários | | | | eca | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.18- | glibc | | | 2.1 AS/ES/WS | e.12smp | | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.4.21- | glibc-2 | | | Linux) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | RHEL (Red Hat Enterprise | 2.6.9 | glibc-2 | Também requer o | | Linux) 4 | | .3.3 | pacote | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.4.19- | glibc | Desenvolvido em | | Server) 8 | SMP | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SLES (SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Distribuições Linux baseadas em kernel do DB2 UDB para Linux 2.6 para Intel(R) x86 suportam as seguintes linguagens de programação e compiladores: C GNU/Linux gcc versão 3.3 C++ GNU/Linux g++ versão 3.3 COBOL Micro Focus COBOL Server Express Versão 2.2 com Service Pack 1 Java(TM) IBM(R) Developer Kit e Runtime Environment for Linux, Java(TM) 2 Technology Edition, Versão 1.3.1 e 1.4.1 Service Release 1, versão de 32 bits Nota: O DB2 UDB instala a última versão suportada do developer kit, se ainda não estiver instalado, a menos que a instalação do DB2 UDB seja uma atualização de uma instalação anterior do DB2 UDB Versão 8. Se uma instalação anterior do DB2 UDB Versão 8 estiver sendo atualizada, o developer kit suportado deve ser instalado manualmente a partir do CD-ROM. Perl Perl 5.004_04 ou posterior, DBI 0.93 ou posterior PHP PHP 4.3.4 ou posterior REXX Object REXX Interpreter para Linux Versão 2.1 Uma instância de 32 bits no DB2 UDB para Distribuições Linux Baseadas em Kernel 2.6 no x86-64 suporta as seguintes linguagens de programação e compiladores: C GNU/Linux gcc versão 3.3 Nota: A opção de compilador "-m32" deve ser utilizada para gerar aplicativos de 32 bits ou rotinas (procedimentos armazenados e funções definidas pelo usuário). C++ GNU/Linux g++ versão 3.3 Notas: 1. Estas versões do compilador de GNU/ Linux g++ não aceitam parâmetros de inteiros para algumas funções fstream. Consulte a documentação do compilador para obter informações adicionais. 2. A opção de compilador "-m32" deve ser utilizada para gerar aplicativos de 32 bits ou rotinas (procedimentos armazenados e funções definidas pelo usuário). Java IBM(R) Developer Kit e Runtime Environment para Linux x86, Java 2 Technology Edition, Versão 1.3.1 Service Release 4, versão de 32 bits e Versão 1.4.1 Service Release 1, versão de 32 bits. Nota: O DB2 UDB instala a última versão suportada do developer kit, se ainda não estiver instalado, a menos que a instalação do DB2 UDB seja uma atualização de uma instalação anterior do DB2 UDB Versão 8. Se uma instalação anterior do DB2 UDB Versão 8 estiver sendo atualizada, o developer kit suportado deve ser instalado manualmente a partir do CD-ROM. Perl Perl 5.8 PHP PHP 4.3.4 ou posterior Uma instância de 64 bits no DB2 UDB para Distribuições Baseadas em Kernel 2.6 para Linux no x86-64 suporta as seguintes linguagens de programação e compiladores: C GNU/Linux gcc versão 3.3 C++ GNU/Linux g++ versão 3.3 Nota: Estas versões do compilador de GNU/ Linux g++ não aceitam parâmetros de inteiros para algumas funções fstream. Consulte a documentação do compilador para obter informações adicionais. Java DB2 UDB não suporta, atualmente, nenhum Java Developer Kit de 64 bits para Linux no x86-64. Perl Perl 5.8 PHP PHP 4.3.4 ou posterior Customizando Opções de Pré-compilação e de Ligação para Procedimentos SQL As opções de pré-compilação e de ligação para procedimentos SQL podem ser customizadas definindo a variável de registro do DB2 de toda a instância, DB2_SQLROUTINE_PREPOPTS com o comando: db2set DB2_SQLROUTINE_PREPOPTS= Além das opções documentadas na Versão 8.2, a opção REOPT é permitida: BLOCKING {UNAMBIG | ALL | NO} DATETIME {DEF | USA | EUR | ISO | JIS | LOC} DEGREE {1 | degree-of-parallelism | ANY} DYNAMICRULES {BIND | RUN} EXPLAIN {NO | YES | ALL} EXPLSNAP {NO | YES | ALL} FEDERATED {NO | YES} INSERT {DEF | BUF} ISOLATION {CS | RR | UR | RS | NC} QUERYOPT optimization-level REOPT {ALWAYS | NONE | ONCE} VALIDATE {RUN | BIND} Opção de Compilação C/C++ Requerida (Linux on POWER 64 Bits) A opção de compilador "-m64" é requerida ao utilizar gcc/g++ para construir aplicativos C/C++ e rotinas para uma instância de 64 bits no DB2 Universal Database para Linux on POWER. A opção de compilador "-q64" é requerida ao utilizar xlc/xlC para construir aplicativos C/C++ e rotinas para instâncias de 64 bits no DB2 Universal Database para Linux on POWER. Comandos de Compilação e Vinculação para Procedimentos Armazenados Micro Focus COBOL (HP-UX) O comando de compilação e de vinculação mostrado na documentação do DB2 Universal Database Versão 8.2 para a construção de procedimentos armazenados utilizando o Micro Focus COBOL no HP-UX é incorreto. O comando de compilação contido no script real sqllib/samples/cobol_mf/bldrtn está incorreto. Os comandos de compilação e de vinculação agora estão combinados em um único comando, utilizando a opção -y para especificar se a saída desejada é uma biblioteca compartilhada. Versão Mínima Suportada do Micro Focus COBOL (HP-UX) A versão mínima suportada do compilador Micro Focus COBOL e tempo de execução no HP-UX é Micro Focus Server Express 2.2 - Service Pack 1 mais o Fix Pack Fixpack22.02_14 para HP-UX PA-RISC 11.x (32/64 bits). Este Fix Pack está disponível a partir do Web site do Micro Focus Support Line em http://supportline.microfocus.com . Definindo Variáveis de Ambiente para Procedimentos Armazenados do Micro Focus COBOL (Windows) Para executar as rotinas externas do Micro Focus COBOL no Windows, é necessário garantir que as variáveis de ambiente do Micro Focus COBOL sejam permanentemente definidas como variáveis do sistema. Procedimento Para definir variáveis de ambiente como variáveis do sistema: 1. Abra o Painel de Controle 2. Selecione Sistema 3. Selecione a guia Avançado 4. Clique em Variáveis de Ambiente 5. Inclua as variáveis na lista de Variáveis do Sistema A definição de variáveis de ambiente na lista de Variáveis do Usuário, em um prompt de comandos ou em um script é insuficiente. Desenvolvimento de Aplicativos: CLI (Call Level Interface) Palavra-chave de Configuração CLI/ODBC Trusted_Connection Descrição da Palavra-chave Permitir que seja feita uma conexão com o usuário autenticado atual. Sintaxe: Trusted_Connection=Yes Nota: Esta palavra-chave não terá efeito se configurada no arquivo db2cli.ini. Ela deve, então, ser fornecida na cadeia de conexão com SQLDriverConnect(). Definição Padrão: O DB2 CLI utiliza informações de ID do usuário e senha fornecidas na cadeia de conexão para SQLDriverConnect(), não o usuário autenticado atual. Notas de Uso: Os aplicativos DB2 CLI que se conectam a um banco de dados geralmente conectam-se utilizando a função SQLDriverConnect(). Um dos argumentos de entrada para esta função é o valor DriverCompletion, que determina quando uma janela será aberta. A seguir estão os valores de DriverCompletion: * SQL_DRIVER_PROMPT: Um diálogo é sempre iniciado. * SQL_DRIVER_COMPLETE: Um diálogo será iniciado apenas se houver informações insuficientes na cadeia de conexão. * SQL_DRIVER_COMPLETE_REQUIRED: Um diálogo será iniciado apenas se houver informações insuficientes na cadeia de conexão. Apenas as informações mandatórias são solicitadas. São solicitadas do usuário apenas as informações requeridas. * SQL_DRIVER_NOPROMPT: Não é solicitada nenhuma informação do usuário. É feita uma tentativa de conexão com as informações contidas na cadeia de conexão. Se não houver informações suficientes, será retornado SQL_ERROR. Nota: Detalhes adicionais sobre DriverCompletion podem ser localizados na documentação para SQLDriverConnect(). Alguns aplicativos, por exemplo, os que estão em um ambiente do Kerberos, podem requerer que um usuário possa conectar-se a um servidor DB2 UDB sem fornecer um ID do usuário ou senha. Se o aplicativo utilizar a opção SQL_DRIVER_NO_PROMPT na chamada SQLDriverConnect(), será feita uma tentativa de conexão sem autenticação do usuário. Esta palavra-chave não é requerida. No caso de um aplicativo de terceiros estar envolvido e o nível de prompt utilizado pelo aplicativo for algo diferente de SQL_DRIVER_NO_PROMPT, o DB2 CLI abrirá uma janela para solicitar as informações ausentes. Configurar Trusted_Connection como Yes, fornecendo-o para a cadeia de conexão de entrada para SQLDriverConnect() ("Trusted_Connection=Yes"), faz o DB2 CLI ignorar qualquer cadeia de ID do usuário ou senha (incluindo cadeias em branco) da cadeia de conexão e ignorar o nível de prompt da função de conexão. O DB2 CLI utiliza o usuário autenticado atual para tentar a conexão com o banco de dados. Se a tentativa de conexão falhar, serão solicitados do usuário o ID do usuário e a senha. Esta palavra-chave é utilizada apenas na cadeia de conexão para SQLDriverConnect(); configurá-la no arquivo db2cli.ini não tem nenhum efeito. Diagnóstico de Atualização da Tabela para Função SQLDescribeParam (CLI) A função SQLDescribeParam() retorna a descrição de um marcador de parâmetro associado a uma instrução SQL preparada. A tabela de diagnósticos foi atualizada com SQLSTATE HYC00. Diagnósticos Tabela 24. SQLDescribeParam SQLSTATEs +--------+-------------------+----------------------------------------+ | SQLSTA | Descrição | Explicação | | TE | | | +--------+-------------------+----------------------------------------+ | HYC00 | Controlador não | Os procedimentos armazenados da função | | | competente | de esquema não estão acessíveis no | | | | servidor. Instale os procedimentos | | | | armazenados da função de esquema no | | | | servidor e certifique-se de que eles | | | | estão acessíveis. | +--------+-------------------+----------------------------------------+ Execução Assíncrona do Call Level Interface O DB2 CLI (DB2 Call Level Interface) pode executar um subconjunto de funções assincronamente. O driver DB2 CLI retorna controle para o aplicativo após chamar a função mas antes de que a função tenha concluído a execução. A função retorna SQL_STILL_EXECUTING toda vez que é chamada até que a execução esteja concluída, no momento em que ela retorna um valor diferente (por exemplo, SQL_SUCCESS). A execução assíncrona é benéfica apenas em sistemas operacionais com encadeamento único. Aplicativos que são executáveis em sistemas operacionais multiencadeados devem executar funções em encadeamentos separados. A execução assíncrona é possível para as funções que normalmente enviam um pedido para o servidor e, então, esperam por uma resposta. Ao invés de esperar, uma função em execução assincronamente retorna controle ao aplicativo. O aplicativo pode, assim, desempenhar outras tarefas, ou retornar controle para o sistema operacional, e utilizar um interruptor para efetuar poll repetidamente para a função até que um código de retorno diferente de SQL_STILL_EXECUTING seja retornado. O suporte à execução assíncrona do CLI está incluído no DB2 UDB (Universal Database), iniciando com a Versão 8.2 FixPak 1 (equivalente à Versão 8.1 FixPak 8). Para obter a documentação desse recurso, consulte o DB2 UDB Versão 7 Information Center em http://publib.boulder.ibm.com/infocenter/db2v7luw/index.jsp. Toda a informação contida na documentação da Versão 7 aplica-se à Versão 8.2 FixPak 1 (equivalente à Versão 8.1 FixPak 8) e mais recente. O DB2 Versão 8 Information Center não contém nenhuma documentação desse recurso. Atributo de Conexão SQL_ATTR_PING_DB SQL_ATTR_PING_DB (DB2 CLI v8.2) O SQL_ATTR_PING_DB é um inteiro de 32 bits utilizado com a função SQLGetConnectAttr() para obter o tempo de resposta da rede de conexão existente entre o cliente DB2 UDB e o servidor DB2 UDB. O tempo de resposta é relatado em microssegundos. Se uma conexão foi estabelecida anteriormente e foi derrubada pelo banco de dados, um valor de 0 é relatado. Se a conexão foi fechada pelo aplicativo, um SQLSTATE de 08003 é relatado. Esse atributo de conexão pode ser retornado por SQLGetConnectAttr(), mas não pode ser configurado por SQLSetConnectAttr(). Qualquer tentativa para configurar esse atributo resultará em um SQLSTATE de HYC00 (Driver não competente). Função SQLBindParameter (CLI) Na documentação para a função SQLBindParameter, a descrição na seção Parâmetro de entrada é incorreta. A descrição correta é: Parâmetro de entrada Um 0 ColumnSize significa que o DB2 CLI utilizará o comprimento máximo do tipo SQL fornecido conforme o tamanho dos parâmetros da coluna ou do procedimento armazenado. O DB2 CLI desempenhará qualquer conversão necessária utilizando esse tamanho. Função SQLMoreResults (CLI) Na documentação da função SQLMoreResults, o atributo de instrução SQL_ATTR_ROW_ARRAY_SIZE é referenciado incorretamente. O atributo de instrução correto é SQL_ATTR_PARAMSET_SIZE. A seção Uso deve ser lida da seguinte forma: Essa função é utilizada para retornar conjunto de resultados múltiplos de uma maneira seqüencial baseado na execução de: * Uma consulta de parâmetros com uma matriz de valores de parâmetro de entrada especificados com o atributo de instrução SQL_ATTR_PARAMSET_SIZE e SQLBindParameter() Atributos de Ambiente Adicionais Além de serem atributos de conexão CLI, os atributos a seguir também são suportados como atributos de ambiente CLI: * SQL_ATTR_INFO_ACCTSTR * SQL_ATTR_INFO_APPLNAME * SQL_ATTR_INFO_USERID * SQL_ATTR_INFO_WRKSTNNAME Para obter informações sobre esses atributos, consulte a documentação dos atributos de conexão CLI no DB2 Information Center ou no CLI Guide and Reference Volume 2 . Requisito de Cursores Roláveis Dinâmicos Para executar atualizações e exclusões nas linhas em um conjunto de resultados do cursor rolável dinâmico, a instrução UPDATE ou DELETE deve incluir todas as colunas de, pelo menos, uma chave exclusiva na tabela de base. Essa pode ser a chave primária ou qualquer outra chave exclusiva. Palavra-chave de Configuração CLI/ODBC RetCatalogAsCurrServer Descrição da Palavra-chave As funções de catálogo retornam o valor CURRENT SERVER ao invés do valor nulo para as colunas de catálogo. Sintaxe da Palavra-chave db2cli.ini: RetCatalogAsCurrServer= 0 | 1 Definição Padrão: Se o DBMS de destino retornar nulo para as colunas de catálogo, o valor CURRENT SERVER não será substituído. Notas de Uso: Se as funções de catálogo do DBMS de destino retornarem um valor nulo para as colunas de catálogo, a configuração RetCatalogAsCurrServer como 1 fará com que o DBMS retorne o valor CURRENT SERVER no lugar. * 0 = As funções de catálogo retornam o valor nulo para as colunas de catálogo (padrão). * 1 = As funções de catálogo retornam o valor CURRENT SERVER ao invés do valor nulo para as colunas de catálogo. Por exemplo, assumir a função de catálogo SQLTables() retorna um conjunto de resultados no qual os valores na coluna TABLE_CAT sejam valores nulos. A configuração RetCatalogAsCurrServer como 1 fará com que o DBMS retorne o valor CURRENT SERVER na coluna TABLE_CAT. Nota: Essa palavra-chave é suportada pelo DB2 UDB para Linux, UNIX(R) e Windows(R) Versão 8.2 FixPak 3 (equivalente à Versão 8.1 FixPak 10) e mais recente. Palavra-chave da Configuração de ReceiveTimeout CLI/ODBC Descrição da Palavra-chave Especifique o tempo, em segundos, para aguardar uma resposta do servidor em uma conexão estabelecida antes de finalizar a tentativa e gerar um erro de tempo limite de comunicação. Sintaxe da Palavra-chave db2cli.ini: ReceiveTimeout = 0 | 1 | 2 | ... | 32767 Definição Padrão: O cliente aguarda indefinidamente por uma resposta do servidor sobre uma conexão estabelecida. Atributo de Conexão Equivalente: SQL_ATTR_RECEIVE_TIMEOUT Notas de Uso: O valor padrão 0 indica que o cliente aguarda indefinidamente por uma resposta. O tempo limite de recepção não tem efeito durante o estabelecimento da conexão; ele é suportado apenas para TCP/IP e é ignorado para qualquer outro protocolo. Atributo de Conexão SQL_ATTR_RECEIVE_TIMEOUT SQL_ATTR_RECEIVE_TIMEOUT (DB2 CLI v8) Um valor inteiro de 32 bits, que é o número de segundos que o cliente aguarda por uma resposta de um servidor em uma conexão estabelecida antes de finalizar a tentativa e gerar um erro de tempo limite de comunicação. O valor padrão 0 indica que o cliente aguarda indefinidamente por uma resposta. O tempo limite de recepção não tem efeito durante o estabelecimento da conexão; ele é suportado apenas para TCP/IP e é ignorado para qualquer outro protocolo. Os valores suportados são inteiros de 0 a 32767. Palavra-chave de Configuração Reopt CLI/ODBC Descrição da Palavra-chave Ativa a otimização de consultas ou reotimização de instruções SQL que possuem registros especiais ou marcadores de parâmetros. Sintaxe da Palavra-chave db2cli.ini: Reopt = 2 | 3 | 4 Definição Padrão: Nenhuma otimização de consultas ocorre no tempo de execução da consulta. A estimativa padrão escolhida pelo compilador é utilizada para registros especiais ou marcadores de parâmetros. Atributo de Instrução e Conexão Equivalente: SQL_ATTR_REOPT Notas de Uso: A otimização ocorre utilizando os valores disponíveis no tempo de execução da consulta para registros especiais ou marcadores de parâmetros, em vez da estimativa padrão escolhida pelo compilador. Os valores válidos da palavra-chave são: * 2 = SQL_REOPT_NONE. Este é o padrão. Nenhuma otimização de consultas ocorre no tempo de execução da consulta. A estimativa padrão escolhida pelo compilador é utilizada para registros especiais ou marcadores de parâmetros. O conjunto de pacotes padrão "NULLID" é utilizado para executar as instruções SQL dinâmicas. * 3 = SQL_REOPT_ONCE. A otimização de consultas ocorre uma vez no tempo de execução de consulta, quando a consulta é executada pela primeira vez. O conjunto de pacotes "NULLIDR1", ligado com a opção de ligação REOPT ONCE, é utilizado. * 4 = SQL_REOPT_ALWAYS. A otimização da consulta ou a reotimização ocorre no tempo de execução da consulta sempre que a consulta é executada. O conjunto de pacotes "NULLIDRA", ligado com a opção de ligação REOPT ALWAYS, é utilizado. O "NULLIDR1" e "NULLIDRA" são nomes de conjuntos de pacotes reservados e, quando utilizados, REOPT ONCE e REOPT ALWAYS são implicadas respectivamente. Esses conjuntos de pacotes devem ser criados explicitamente com os seguintes comandos: db2 bind db2clipk.bnd collection NULLIDR1 db2 bind db2clipk.bnd collection NULLIDRA Se as palavras-chave Reopt e CurrentPackageSet forem especificadas, CurrentPackageSet tem precedência. Atributo de Instrução e de Conexão SQL_ATTR_REOPT SQL_ATTR_REOPT (DB2 CLI v8) Um valor inteiro de 32 bits que permite a otimização de consultas para instruções SQL que contêm registros especiais ou marcadores de parâmetros. A otimização ocorre utilizando os valores disponíveis no tempo de execução da consulta para registros especiais ou marcadores de parâmetros, em vez da estimativa padrão escolhida pelo compilador. Os valores válidos do atributo são: * 2 = SQL_REOPT_NONE. Este é o padrão. Nenhuma otimização de consultas ocorre no tempo de execução da consulta. A estimativa padrão escolhida pelo compilador é utilizada para registros especiais ou marcadores de parâmetros. O conjunto de pacotes padrão "NULLID" é utilizado para executar as instruções SQL dinâmicas. * 3 = SQL_REOPT_ONCE. A otimização de consultas ocorre uma vez no tempo de execução de consulta, quando a consulta é executada pela primeira vez. O conjunto de pacotes "NULLIDR1", ligado com a opção de ligação REOPT ONCE, é utilizado. * 4 = SQL_REOPT_ALWAYS. A otimização da consulta ou a reotimização ocorre no tempo de execução da consulta sempre que a consulta é executada. O conjunto de pacotes "NULLIDRA", ligado com a opção de ligação REOPT ALWAYS, é utilizado. O "NULLIDR1" e "NULLIDRA" são nomes de conjuntos de pacotes reservados e, quando utilizados, REOPT ONCE e REOPT ALWAYS são implicadas respectivamente. Esses conjuntos de pacotes devem ser criados explicitamente com esses comandos: db2 bind db2clipk.bnd collection NULLIDR1 db2 bind db2clipk.bnd collection NULLIDRA SQL_ATTR_REOPT e SQL_ATTR_CURRENT_PACKAGE_SET são mutuamente exclusivos, portanto, se um é definido, o outro não é permitido. Palavra-chave da Configuração de CurrentPackageSet CLI/ODBC Descrição da Palavra-chave Emite a instrução SET CURRENT PACKAGESET após todas as conexões. Sintaxe da Palavra-chave db2cli.ini: CurrentPackageSet = schema name Definição Padrão: A cláusula não é anexada. Atributo de Conexão Equivalente: SQL_ATTR_CURRENT_PACKAGE_SET Notas de Uso: Essa opção emite a instrução SET CURRENT PACKAGESET SQL com o valor CurrentPackageSet, após todas as conexões a um banco de dados. Por padrão, essa cláusula não é anexada. A instrução SET CURRENT PACKAGESET SQL define o nome do esquema (identificador de coletas), utilizado para selecionar o pacote a ser utilizado para instruções SQL subseqüentes. Aplicativos CLI/ODBC emitem instruções SQL dinâmicas. Utilizando essa opção, é possível controlar os privilégios utilizados para executar essas instruções: * Escolha um esquema para utilizar ao executar as instruções SQL dos aplicativos CLI/ODBC. * Assegure-se de que os objetos no esquema possuem os privilégios desejados e, em seguida, religue de acordo. * Define a opção CurrentPackageSet para esse esquema. As instruções SQL dos aplicativos CLI/ODBC serão executadas agora no esquema especificado e utilizarão os privilégios definidos. Os seguintes nomes de conjuntos de pacotes são reservados: "NULLID ", "NULLIDR1", "NULLIDRA". Se as palavras-chave Reopt e CurrentPackageSet forem especificadas, CurrentPackageSet tem precedência. Atributo de Conexão SQL_ATTR_CURRENT_PACKAGE_SET SQL_ATTR_CURRENT_PACKAGE_SET (DB2 CLI v5) Uma cadeia de caracteres finalizada em nulo que indica o nome do esquema (identificador de coleta), utilizado para selecionar o pacote para instruções SQL subseqüentes. A configuração desse atributo causa a emissão da instrução SET CURRENT PACKAGESET SQL. Se esse atributo for definido antes de uma conexão, a instrução SET CURRENT PACKAGESET SQL será emitida no tempo de conexão. Aplicativos CLI/ODBC emitem instruções SQL dinâmicas. Utilizando esse atributo de conexão, é possível controlar os privilégios utilizados para executar essas instruções: * Escolha um esquema para utilizar ao executar as instruções SQL dos aplicativos CLI/ODBC. * Assegure-se de que os objetos no esquema possuem os privilégios desejados e, em seguida, religue de acordo. Isso geralmente significa a ligação dos pacotes CLI (sqllib/bnd/db2cli.lst), utilizando a opção COLLECTION . Consulte o comando BIND para obter detalhes adicionais. * Defina a opção CURRENTPACKAGESET para esse esquema. As instruções SQL dos aplicativos CLI/ODBC serão executadas agora no esquema especificado e utilizarão os privilégios definidos. A configuração da palavra-chave de configuração de CLI/ODBC, CURRENTPACKAGESET, é um método alternativo de especificação do nome do esquema. Os seguintes nomes de conjuntos de pacotes são reservados: "NULLID ", "NULLIDR1", "NULLIDRA". SQL_ATTR_REOPT e SQL_ATTR_CURRENT_PACKAGE_SET são mutuamente exclusivos, portanto, se um é definido, o outro não é permitido. Palavra-chave de Configuração MapBigintCDefault de CLI/ODBC Descrição da Palavra-chave Especifique o tipo C padrão de colunas e marcadores de parâmetro BIGINT. Sintaxe da Palavra-chave db2cli.ini: MapBigintCDefault = 0 | 1 | 2 Definição Padrão: A representação do tipo C padrão para dados BIGINT é SQL_C_BIGINT. Notas de Uso: MapBigintCDefault controla o tipo C utilizado quando SQL_C_DEFAULT é especificado para colunas e marcadores de parâmetros BIGINT. Esta palavra-chave deve ser utilizada principalmente com aplicativos da Microsoft, como o Microsoft Access, que não podem manipular inteiros de 8 bytes. Defina MapBigintCDefault da seguinte forma: * 0 - para a representação do tipo C SQL_C_BIGINT padrão * 1 - para uma representação de tipo C SQL_C_CHAR * 2 - para uma representação de tipo C SQL_C_WCHAR Esta palavra-chave afeta o comportamento de funções CLI nas quais SQL_C_DEFAULT pode ser especificado como um tipo C, por exemplo, SQLBindParameter(), SQLBindCol() e SQLGetData(). Palavra-chave de Configuração DescribeOutputLevel de CLI/ODBC Descrição da Palavra-chave Defina o nível de informações de descrição de colunas de saída que são solicitadas pelo driver CLI durante pedidos de preparação ou de descrição. Sintaxe da Palavra-chave db2cli.ini: DescribeOutputLevel = 0 | 1 | 2 | 3 Definição Padrão: Solicite as informações de descrição listadas no nível 2 da Tabela 25. Notas de Uso: Esta palavra-chave controla a quantidade de informações solicitadas pelo driver CLI em um pedido de preparação ou de descrição. Por padrão, quando o servidor recebe um pedido de descrição, ele retorna as informações contidas no nível 2 da Tabela 25 para as colunas do conjunto de resultados. No entanto, um aplicativo talvez não precise destas informações ou precise de informações adicionais. A definição da palavra-chave DescribeOutputLevel para um nível que atende as necessidades do aplicativo cliente pode aprimorar o desempenho, porque os dados de descrição transferidos entre o cliente e o servidor estão limitados à quantidade mínima requerida pelo aplicativo. Se a definição de DescribeOutputLevel for muito baixa, poderá impactar a funcionalidade do aplicativo (dependendo dos requisitos do aplicativo). As funções CLI para recuperar as informações de descrição podem não falhar neste caso, mas as informações retornadas podem estar incompletas. As definições suportadas para DescribeOutputLevel são: * 0 - nenhuma informação de descrição é retornada ao aplicativo cliente * 1 - as informações de descrição categorizadas no nível 1 (consulte a Tabela 25) são retornadas ao aplicativo cliente * 2 - (padrão) as informações de descrição categorizadas no nível 2 (consulte a Tabela 25) são retornadas ao aplicativo cliente * 3 - as informações de descrição categorizadas no nível 3 (consulte a Tabela 25) são retornadas ao aplicativo cliente A tabela a seguir lista os campos que formam as informações de descrição retornadas pelo servidor quando ele recebe um pedido de preparação ou descrição. Estes campos são agrupados em níveis e a palavra-chave de configuração DescribeOutputLevel de CLI/ODBC controla quais níveis de informações de descrição são solicitados pelo driver CLI. Nota: Nem todos os níveis de informações de descrição são suportados por todos os servidores DB2. Todos os níveis de informações de descrição são suportados nos servidores DB2 a seguir: DB2 UDB (Universal Database) para Linux , UNIX e Windows Versão 8 e posterior, DB2 UDB para z/OS Versão 8 e posterior e DB2 UDB para iSeries Versão 5 Release 3 e posterior. Todos os outros servidores DB2 suportam apenas a definição 2 ou 0 para DescribeOutputLevel. Tabela 25. Níveis de Informações de Descrição +-----------------------+----------------------+----------------------+ | Nível 1 | Nível 2 | Nível 3 | +-----------------------+----------------------+----------------------+ | SQL_DESC_COUNT | todos os campos de | todos os campos de | | SQL_COLUMN_COUNT | nível | níveis | | SQL_DESC_TYPE | 1 e: | 1 e 2 e: | | SQL_DESC_CONCISE_TYPE | SQL_DESC_NAME | SQL_DESC_BASE_COLUMN | | SQL_COLUMN_LENGTH | SQL_DESC_LABEL | _NAME | | SQL_DESC_OCTET_LENGTH | SQL_COLUMN_NAME | SQL_DESC_UPDATABLE | | SQL_DESC_LENGTH | SQL_DESC_UNNAMED | SQL_DESC_AUTO_UNIQUE | | SQL_DESC_PRECISION | SQL_DESC_TYPE_NAME | _VALUE | | SQL_COLUMN_PRECISION | SQL_DESC_DISTINCT_TY | SQL_DESC_SCHEMA_NAME | | SQL_DESC_SCALE | PE | SQL_DESC_CATALOG_NAM | | SQL_COLUMN_SCALE | SQL_DESC_REFERENCE_T | E | | SQL_DESC_DISPLAY_SIZE | YPE | SQL_DESC_TABLE_NAME | | SQL_DESC_NULLABLE | SQL_DESC_STRUCTURED_ | SQL_DESC_BASE_TABLE_ | | SQL_COLUMN_NULLABLE | TYPE | NAME | | SQL_DESC_UNSIGNED | SQL_DESC_USER_TYPE | | | SQL_DESC_SEARCHABLE | SQL_DESC_LOCAL_TYPE_ | | | SQL_DESC_LITERAL_SUFF | NAME | | | IX | SQL_DESC_USER_DEFINE | | | SQL_DESC_LITERAL_PREF | D_ | | | IX | TYPE_CODE | | | SQL_DESC_CASE_SENSITI | | | | VE | | | | SQL_DESC_FIXED_PREC_S | | | | CALE | | | +-----------------------+----------------------+----------------------+ Desenvolvimento de Aplicativos: Aplicativos Clientes de Programação A Conectividade do Tipo 4 do DB2 Universal JDBC Driver com DB2 para VM/VSE Não É Suportada O DB2 Universal JDBC Driver não suporta a conectividade tipo 4 com bancos de dados DB2 para VM/VSE. Os tópicos "Setting up the Windows Java environment" e "Installing the DB2 Universal JDBC Driver" no Application Development Guide: Programming Client Applications e no DB2 UDB Information Center afirmam incorretamente que o DB2 Universal JDBC Driver suporta a conectividade tipo 4 com bancos de dados DB2 para VM/VSE. Centralizador de Conexão do DB2 Universal JDBC Driver e Balanceamento da Carga de Trabalho Sysplex Aplicativos Java que utilizem Conectividade do Driver JDBC tipo 2 do DB2 Universal para acessar DB2 UDB para servidores z/OS(R) podem tirar vantagem das funções do seu centralizador de conexão e do balanceamento da carga de trabalho Sysplex. Essas funções são semelhantes às funções do centralizador de conexão e do balanceamento da carga de trabalho Sysplex do DB2 Connect. O centralizador de conexão DB2 Universal JDBC Driver pode reduzir os recursos que os servidores de banco de dados DB2 UDB para z/OS(R) solicitam para suportar números grandes de aplicativos clientes, permitindo que vários objetos de conexão utilizem a mesma conexão física, a qual reduz o número total de conexões físicas com o servidor de banco de dados. O balanceamento da carga de trabalho Sysplex DB2 Universal JDBC Driver pode aprimorar a disponibilidade de um grupo de compartilhamento de dados porque o driver obtém informação de status freqüente sobre os membros de um grupo de compartilhamento de dados. O driver utiliza essa informação para determinar o membro de compartilhamento de dados para o qual a próxima transação deve ser roteada. Com o balanceamento de carga de trabalho Sysplex, o servidor DB2 UDB para z/OS e o WLM para z/OS (Workload Manager) asseguram-se de que o trabalho seja distribuído eficientemente entre os membros do grupo de compartilhamento de dados e que esse trabalho seja transferido para outro membro de um grupo de compartilhamento de dados caso um dos membros tenha uma deficiência. O DB2 Universal JDBC Driver utiliza objetos de transporte e um conjunto de objetos de transporte global para suportar o centralizador de conexão e o balanceamento da carga de trabalho Sysplex. Há um objeto de transporte para cada conexão física para o servidor de banco de dados. Ao ativar o balanceamento do centralizador de conexão e da carga de trabalho Sysplex, você configura um número máximo de conexões físicas para o servidor de banco de dados em qualquer momento, configurando o número máximo de objetos de transporte. No nível driver, você configura limites para o número de objetos de transporte, utilizando as propriedades de configuração DB2 Universal JDBC Driver. No nível de conexão, você ativa e desativa o balanceamento do centralizador de conexão DB2 Universal JDBC Driver e da carga de trabalho Sysplex, além de configurar limites para o número de objetos de transporte, utilizando as propriedades DataSource. Você pode escolher qualquer uma das maneiras a seguir para monitorar o conjunto de objetos de transporte: * Utilizando rastreios que você inicia ao utilizar as propriedades de configuração DB2 Universal JDBC Driver * Utilizando uma interface de programação de aplicativo Propriedades de Configuração DB2 Universal JDBC Driver para Balanceamento do Centralizador de Conexão e da Carga de Trabalho Sysplex Cada uma das propriedades de configuração a seguir é utilizada para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex db2.jcc.dumpPool Especifica os tipos de estatísticas que são gravadas para os eventos do conjunto de transporte, além das estatísticas de resumo que são gravadas. O conjunto de transporte global é utilizado para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex. O tipo de dados de db2.jcc.dumpPool é inteiro (int.). As propriedades de configuração de db2.jcc.dumpPoolStatisticsOnSchedule e de db2.jcc.dumpPoolStatisticsOnScheduleFile também devem ser configuradas como estatísticas de gravação antes que qualquer estatística seja gravada. É possível especificar um ou mais dos seguintes tipos de estatísticas com a propriedade db2.jcc.dumpPool: * DUMP_REMOVE_OBJECT (hexadecimal: X'01', decimal: 1) * DUMP_GET_OBJECT (hexadecimal: X'02', decimal: 2) * DUMP_WAIT_OBJECT (hexadecimal: X'04', decimal: 4) * DUMP_SET_AVAILABLE_OBJECT (hexadecimal: X'08', decimal: 8) * DUMP_CREATE_OBJECT (hexadecimal: X'10', decimal: 16) * DUMP_SYSPLEX_MSG (hexadecimal: X'20', decimal: 32) * DUMP_POOL_ERROR (hexadecimal: X'80', decimal: 128) Para rastrear mais de um tipo de evento, inclua os valores para os tipos de eventos que você queira rastrear. Por exemplo, suponha que você queira rastrear eventos DUMP_GET_OBJECT e DUMP_CREATE_OBJECT. Os equivalentes numéricos desses valores são 2 e 16, então você especifica 18 para o valor db2.jcc.dumpPool. O padrão é 0, o que significa que apenas estatísticas de resumo para o conjunto de transporte global são gravadas. db2.jcc.dumpPoolStatisticsOnSchedule Especifica qual a freqüência, em segundos, que as estatísticas de conjunto de transporte global são gravadas no arquivo que foi especificado pela propriedade de configuração db2.jcc.dumpPoolStatisticsOnScheduleFile. O conjunto de transporte global é utilizado para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex. O padrão é -1, o que significa que as estatísticas do conjunto de transporte global não foram gravadas. db2.jcc.dumpPoolStatisticsOnScheduleFile Especifica o nome do arquivo no qual as estatísticas do conjunto de transporte global são gravadas. O conjunto de transporte global é utilizado para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex. Se a propriedade de configuração db2.jcc.dumpPoolStatisticsOnScheduleFile não for especificada, as estatísticas do conjunto de transporte global não serão gravadas. db2.jcc.maxTransportObjectIdleTime Especifica a quantidade de tempo, em segundos, que um objeto de transporte não utilizado permanece em um conjunto de objetos de transporte global antes que ele possa ser excluído do conjunto. Os objetos de transporte são utilizados para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex. O valor padrão para a propriedade de configuração db2.jcc.maxTransportObjectIdleTime é 60. A configuração de db2.jcc.maxTransportObjectIdleTime como um valor menor que 0 faz com que os objetos de transporte não utilizados sejam excluídos do conjunto imediatamente. Essa ação não é recomendada porque ela pode causar grave degradação de desempenho. db2.jcc.maxTransportObjectWaitTime Especifica a quantidade de tempo, em segundos, que um aplicativo espera para um objeto de transporte se o valor db2.jcc.maxTransportObjects tiver sido alcançado. Os objetos de transporte são utilizados para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex. Quando um aplicativo espera mais do que o valor db2.jcc.maxTransportObjectWaitTime, o conjunto de objetos de transporte global emite uma SQLException. O valor padrão para a propriedade de configuração db2.jcc.maxTransportObjectWaitTime é -1. Qualquer valor negativo significa que os aplicativos esperam o tempo todo. db2.jcc.maxTransportObjects Especifica o limite superior para o número de objetos de transporte em um conjunto de objetos de transporte global para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex. Quando o número de objetos de transporte no conjunto atinge o valor db2.jcc.maxTransportObjects, os objetos de transporte que não tenham sido utilizados por mais tempo que o valor db2.jcc.maxTransportObjectIdleTime são excluídos do conjunto. O valor padrão para a propriedade de configuração de db2.jcc.maxTransportObjects é -1, o que significa que não há limite para o número de objetos de transporte no conjunto de objetos de transporte global. db2.jcc.minTransportObjects Especifica o limite inferior para o número de objetos de transporte em um conjunto de objetos de transporte global para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex. Quando um JVM é criado, não há objetos de transporte no conjunto. Os objetos de transporte são incluídos no conjunto conforme forem necessários. Após o valor db2.jcc.minTransportObjects ser alcançado, o número de objetos de transporte no conjunto de objetos de transporte global nunca chega abaixo do valor db2.jcc.minTransportObjects para a existência do JVM. O valor padrão para a propriedade de configuração de db2.jcc.minTransportObjects é 0. Qualquer valor menor ou igual a 0 significa que o conjunto de objetos de transporte global pode se tornar vazio. DB2 Universal JDBC Driver Propriedades de DataSource para Balanceamento do Centralizador de Conexão e da Carga de Trabalho Sysplex Cada uma das seguintes propriedades de DataSource DB2 Universal JDBC Driver é utilizada para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex enableConnectionConcentrator Indica se a função do centralizador de conexão do DB2 Universal JDBC Driver está ativada. A função do centralizador de conexão está disponível somente para conexões de DB2 UDB para servidores z/OS. O tipo de dados da propriedade enableConnectionConcentrator é booleano. O padrão é false. Porém, se enableSysplexWLB for configurado como true, o padrão será true. enableSysplexWLB Indica se a função de balanceamento da carga de trabalho Sysplex do DB2 Universal JDBC Driver está ativada. A função de balanceamento da carga de trabalho Sysplex está disponível somente para conexões de DB2 UDB para servidores z/OS. O tipo de dados da propriedade enableSysplexWLB é booleano. O padrão é false. Porém, se enableSysplexWLB for configurado como true, enableConnectionConcentrator será configurado como true por padrão. maxTransportObjects Especifica o número máximo de transporte de objetos que pode ser utilizado para todas as conexões com o objeto DataSource associado. Os objetos de transporte são utilizados para o balanceamento do centralizador de conexão e da carga de trabalho Sysplex. O valor maxTransportObjects é ignorado se as propriedades enableConnectionConcentrator ou enableSysplexWLB não estiverem configuradas para ativar a utilização do balanceamento do centralizador de conexão ou da carga de trabalho Sysplex. O tipo de dados dessa propriedade é inteiro (int.). Se o valor maxTransportObjects não tiver sido alcançado e um objeto de transporte não estiver disponível no conjunto de objetos de transporte, o conjunto cria um novo objeto de transporte. Se o valor maxTransportObjects tiver sido alcançado, o aplicativo espera a quantidade de tempo que é especificada pela propriedade de configuração db2.jcc.maxTransportObjectWaitTime. Após o tempo ter decorrido, se ainda não houver objeto de transporte disponível no conjunto, o mesmo emite um SQLException. A propriedade maxTransportObjects não substitui a propriedade de configuração db2.jcc.maxTransportObjects. A propriedade maxTransportObjects não tem efeito em conexões de outros objetos DataSource. Se o valor maxTransportObjects for maior que o valor db2.jcc.maxTransportObjects, o maxTransportObjects não acrescenta o valor db2.jcc.maxTransportObjects. O valor padrão para a propriedade maxTransportObjects é -1, o que significa que o número de objetos de transporte para o DataSource é limitado somente pelo valor db2.jcc.maxTransportObjects do driver. Exemplo de Ativação das Funções de Balanceamento do Centralizador de Conexão e da Carga de Trabalho Sysplex para DB2 Universal JDBC Driver no WebSphere Application Server O procedimento a seguir é um exemplo de ativação das funções de balanceamento do centralizador de conexão e da carga de trabalho Sysplex para DB2 Universal JDBC Driver com WebSphere(R) Application Server. Pré-requisitos Requisitos do Servidor: * WLM para z/OS * DB2 UDB para OS/390(R) e z/OS, Versão 7 ou mais recente Requisitos do Cliente: * DB2 Universal JDBC Driver no nível do FixPak 10 * WebSphere(R) Application Server, Versão 5.1 ou posterior Procedimento Para ativar as funções de balanceamento do centralizador de conexão e da carga de trabalho Sysplex para DB2 Universal JDBC Driver com WebSphere Application Server: 1. Verifique se o DB2 Universal JDBC Driver está no nível correto para suportar as funções de equilíbrio do centralizador de conexão e de carga de trabalho Sysplex, emitindo o seguinte comando no processador de linha de comandos no z/OS ou no System Services no UNIX(R): java com.ibm.db2.jcc.DB2Jcc -version Localize uma linha na saída como esta: [ibm][db2][jcc] Driver: IBM DB2 JDBC Universal Driver Architecture n n n deve ser 2.7 ou mais recente. 2. Defina as propriedades de configuração DB2 Universal JDBC Driver para ativar o balanceamento do centralizador de conexão ou da carga de trabalho Sysplex para todas as instâncias DataSource que são criadas baseadas no driver. Defina as propriedades de configuração no arquivo DB2JccConfiguration.properties . a. Crie um arquivo DB2JccConfiguration.properties ou edite o arquivo DB2JccConfiguration.properties existente. b. Defina as propriedade de configuração a seguir: * db2.jcc.minTransportObjects * db2.jcc.maxTransportObjects * db2.jcc.maxTransportObjectWaitTime * db2.jcc.dumpPool * db2.jcc.dumpPoolStatisticsOnScheduleFile Inicie com configurações semelhantes a estas: db2.jcc.minTransportObjects=0 db2.jcc.maxTransportObjects=1500 db2.jcc.maxTransportObjectWaitTime=-1 db2.jcc.dumpPool=0 db2.jcc.dumpPoolStatisticsOnScheduleFile= /home/WAS/logs/srv1/poolstats c. Inclua o caminho de diretório do DB2JccConfiguration.properties para o caminho de classe DB2 Universal JDBC Driver WebSphere Application Server. 3. Configure as propriedades da origem de dados DB2 Universal JDBC Driver para ativar as funções de balanceamento do centralizador de conexão ou da carga de trabalho do Sysplex. No console administrativo WebSphere Application Server, configure as seguintes propriedades para a origem de dados que seu aplicativo utiliza para se conectar ao servidor de banco de dados: * enableSysplexWLB * enableConnectionConcentrator * maxTransportObjects Suponha que você queira a função do centralizador de conexão bem como a função de balanceamento da carga de trabalho do Sysplex. Inicie com configurações semelhantes a estas: Tabela 26. Exemplo de Configurações de Propriedade da Origem de Dados para Funções de Balanceamento do Centralizador de Conexão e da Carga de Trabalho Sysplex DB2 Universal JDBC Driver +-------------------------+-------------------------------------------+ | Propriedade Definição | +-------------------------+-------------------------------------------+ | enableSysplexWLB true1 | +-------------------------+-------------------------------------------+ | maxTransportObjects 100 | +---------------------------------------------------------------------+ | Notas: | | 1. A propriedade enableConnectionConcentrator é configurada como | | true por padrão porque a propriedade está configurada como | | enableSysplexWLB true. | +---------------------------------------------------------------------+ 4. Reinicie o WebSphere Application Server. Métodos para Monitoramento das Funções de Balanceamento do Centralizador de Conexão e da Carga de Trabalho do Sysplex DB2 Universal JDBC Driver Para monitorar as funções do centralizador de conexão e da carga de trabalho Sysplex DB2 Universal JDBC Driver, é necessário monitorar o conjunto de objetos de transporte global. Você pode escolher qualquer uma das maneiras a seguir para monitorar o conjunto de objetos de transporte: * Utilizando rastreios que você inicia ao definir as propriedades de configuração DB2 Universal JDBC Driver * Utilizando uma interface de programação de aplicativo Propriedades de Configuração para Monitorar o Conjunto de Objetos de Transporte Global O rastreio de controle das propriedades de configuração de db2.jcc.dumpPool, db2.jcc.dumpPoolStatisticsOnSchedule e db2.jcc.dumpPoolStatisticsOnScheduleFile do conjunto de objetos de transporte global. Por exemplo, o conjunto a seguir de definições da propriedade de configuração ocasiona mensagens de erro Sysplex e mensagens de erro do conjunto de dump a serem gravadas a cada 60 segundos no arquivo /home/WAS/logs/srv1/poolstats: db2.jcc.dumpPool=DUMP_SYSPLEX_MSG|DUMP_POOL_ERROR db2.jcc.dumpPoolStatisticsOnSchedule=60 db2.jcc.dumpPoolStatisticsOnScheduleFile=/home/WAS/logs/srv1/poolstats Uma entrada no arquivo de estatísticas do conjunto se parece com: time Scheduled PoolStatistics npr:2575 nsr:2575 lwroc:439 hwroc:1764 coc:372 aooc:362 rmoc:362 nbr:2872 tbt:857520 tpo:10 Os significados dos campos são: npr O número total de pedidos feitos ao conjunto, desde a sua criação, pelo DB2 Universal JDBC Driver. nsr O número de pedidos bem-sucedidos que o DB2 Universal JDBC Driver efetuou ao conjunto desde que este foi criado. Um pedido bem-sucedido significa que o conjunto retornou um objeto. lwroc O número de objetos que foram reutilizados mas não estão no conjunto. Isto pode ocorrer se um objeto de conexão libera um objeto de transporte no limite da transação. Se o objeto de conexão precisar de um objeto de transporte mais tarde e o objeto de transporte original não foi utilizado por nenhum outro objeto de conexão, o objeto de conexão pode utilizar aquele objeto de transporte. hwroc O número de objetos que foram reutilizados a partir do conjunto. coc O número de objetos que o DB2 Universal JDBC Driver criou desde que o conjunto foi criado. aooc O número de objetos que excedeu o tempo inativo que foi especificado pela propriedade de configuração db2.jcc.maxTransportObjectIdleTime e foi excluído do conjunto. rmoc O número de objetos que foi excluído do conjunto desde que o conjunto foi criado. nbr O número de pedidos que o DB2 Universal JDBC Driver realizou ao conjunto que o mesmo bloqueou porque a sua capacidade máxima foi atingida. Um pedido bloqueado pode ser bem-sucedido se um objeto for retornado ao conjunto antes que o valor de configuração do db2.jcc.maxTransportObjectWaitTime seja excedido e que uma exceção seja emitida. tbt O tempo total em milissegundos dos pedidos que foram bloqueados pelo conjunto. Esse tempo pode ser muito maior que o tempo de execução decorrido do aplicativo se o aplicativo utilizar encadeamentos múltiplos. tpo O número de objetos que estão atualmente no conjunto. Interfaces de Programação do Aplicativo para Monitorar o Conjunto de Objetos de Transporte Global Você pode gravar aplicativos para reunir estatísticas no conjunto de objetos de transporte global. Esses aplicativos criam objetos na classe DB2PoolMonitor e chamam métodos para recuperar informação sobre o conjunto. Por exemplo, o seguinte código cria um objeto para monitorar o conjunto de objetos de transporte global: import com.ibm.db2.jcc.DB2PoolMonitor; DB2PoolMonitor transportObjectPoolMonitor = DB2PoolMonitor.getPoolMonitor (DB2PoolMonitor.TRANSPORT_OBJECT); Após o objeto DB2PoolMonitor ser criado, você pode utilizar os seguintes métodos para monitorar o conjunto de objetos de transporte global. getMonitorVersion Formato: public int getMonitorVersion() Recupera a versão da classe DB2PoolMonitor que é enviada com o DB2 Universal JDBC Driver. totalRequestsToPool Formato: public int totalRequestsToPool() Recupera o número total de pedidos feitos ao conjunto, desde a sua criação, pelo DB2 Universal JDBC Driver. successfullRequestsFromPool Formato: public int successfullRequestsFromPool() Recupera o número de pedidos bem-sucedidos que o DB2 Universal JDBC Driver efetuou ao conjunto desde que este foi criado. Um pedido bem-sucedido significa que o conjunto retornou um objeto. numberOfRequestsBlocked Formato: public int numberOfRequestsBlocked() Recupera o número de pedidos que o DB2 Universal JDBC Driver realizou ao conjunto que o mesmo bloqueou porque a sua capacidade máxima foi atingida. Um pedido bloqueado pode ser bem-sucedido se um objeto for retornado ao conjunto antes que o valor de configuração do db2.jcc.maxTransportObjectWaitTime seja excedido e que uma exceção seja emitida. totalTimeBlocked Formato: public long totalTimeBlocked() Recupera o tempo total em milissegundos dos pedidos que foram bloqueados pelo conjunto. Esse tempo pode ser muito maior que o tempo de execução decorrido do aplicativo se o aplicativo utilizar encadeamentos múltiplos. lightWeightReusedObjectCount Formato: public int lightWeightReusedObjectCount() Recupera o número de objetos que foram reutilizados mas não estão no conjunto. Isto pode ocorrer se um objeto de conexão libera um objeto de transporte no limite da transação. Se o objeto de conexão precisar de um objeto de transporte mais tarde e o objeto de transporte original não foi utilizado por nenhum outro objeto de conexão, o objeto de conexão pode utilizar aquele objeto de transporte. heavyWeightReusedObjectCount Formato: public int heavyWeightReusedObjectCount() Recupera o número de objetos que foram reutilizados a partir do conjunto. createdObjectCount Formato: public int createdObjectCount() Recupera o número de objetos que o DB2 Universal JDBC Driver criou desde que o conjunto foi criado. agedOutObjectCount Formato: public int agedOutObjectCount() Recupera o número de objetos que excedeu o tempo inativo que foi especificado pela propriedade de configuração db2.jcc.maxTransportObjectIdleTime e foi excluído do conjunto. removedObjectCount Formato: public int removedObjectCount() Recupera o número de objetos que foi excluído do conjunto desde que o conjunto foi criado. totalPoolObjects Formato: public int totalPoolObjects() O número de objetos que estão atualmente no conjunto. Palavra-chave de Configuração CLI/ODBC OleDbReportIsLongForLongTypes A palavra-chave OleDbReportIsLongForLongTypes é suportada pelos servidores de banco de dados a seguir: * DB2 UDB para z/OS Versão 6 com PTF UQ93891 * DB2 UDB para z/OS Versão 7 com PTF UQ93889 * DB2 UDB para z/OS Versão 8 com PTF UQ93890 * DB2 UDB para Linux, UNIX e Windows Versão 8.2 (equivalente à Versão 8.1 FixPak 7) e mais recente Descrição da Palavra-chave Torna o sinalizador OLE DB LONGOS tipos de dados com DBCOLUMNFLAGS_ISLONG. Sintaxe da Palavra-chave db2cli.ini: OleDbReportIsLongForLongTypes = 0 | 1 Atributo de Instrução Equivalente: SQL_ATTR_REPORT_ISLONG_FOR_LONGTYPES_OLEDB Definição Padrão: Tipos LONG (LONG VARCHAR, LONG VARCHAR FOR BIT DATA, LONG VARGRAPHIC e LONG VARGRAPHIC FOR BIT DATA) não têm o conjunto de sinalizadores DBCOLUMNFLAGS_ISLONG, que pode fazer com que as colunas sejam utilizadas na cláusula WHERE. Notas de Uso: O mecanismo do cursor de cliente do OLE DB e o CommandBuilder do OLE DB .NET Data Provider geram instruções de atualização e exclusão com base nas informações da coluna fornecidas pelo IBM DB2 OLE DB Provider. Se a instrução gerada contiver um tipo LONG na cláusula WHERE, a instrução irá falhar porque os tipos LONG não podem ser utilizados em uma procura com um operador de igualdade. Definir a palavra-chave OleDbReportIsLongForLongTypes para 1 fará com que o IBM DB2 OLE DB Provider relate tipos LONG (LONG VARCHAR, LONG VARCHAR FOR BIT DATA, LONG VARGRAPHIC e LONG VARGRAPHIC FOR BIT DATA) com o conjunto de sinalizadores DBCOLUMNFLAGS_ISLONG. Isso impedirá que as colunas longas sejam utilizadas na cláusula WHERE. Palavra-chave de Configuração CLI/ODBC OleDbSQLColumnsSortByOrdinal A palavra-chave OleDbSQLColumnsSortByOrdinal é suportada pelos servidores de banco de dados a seguir: * DB2 UDB para z/OS Versão 6 com PTF UQ93891 * DB2 UDB para z/OS Versão 7 com PTF UQ93889 * DB2 UDB para z/OS Versão 8 com PTF UQ93890 * DB2 UDB para Linux, UNIX e Windows Versão 8.2 (equivalente à Versão 8.1 FixPak 7) e mais recente Descrição da Palavra-chave Faz o IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) do OLE DB retornar um conjunto de linhas classificadas pela coluna ORDINAL_POSITION. Sintaxe da Palavra-chave db2cli.ini: OleDbSQLColumnsSortByOrdinal = 0 | 1 Atributo de Instrução Equivalente: SQL_ATTR_SQLCOLUMNS_SORT_BY_ORDINAL_OLEDB Definição Padrão: IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) retorna o conjunto de linhas classificado pelas colunas TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME. Notas de Uso: A especificação OLE DB da Microsoft requer que IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) retorne o conjunto de linhas classificado pelas colunas TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME. O IBM DB2 OLE DB Provider está de acordo com a especificação. Porém, os aplicativos que utilizam o provedor Microsoft ODBC Bridge (MSDASQL) foram tipicamente codificados para obter o conjunto de linhas classificado pelo ORDINAL_POSITION. Definir a palavra-chave OleDbSQLColumnsSortByOrdinal para 1 fará com que o provedor retorne um conjunto de linhas classificado pelo ORDINAL_POSITION. Grupo de Propriedades do DB2 Data Source para o IBM DB2 OLE DB Provider O IBM DB2 OLE DB Provider incluiu um novo grupo de propriedade: DB2 Data Source. O conjunto de propriedades para DB2 Data Source é DBPROPSET_DB2DATASOURCE. O GUID para o conjunto de propriedades é {0x8a80412a,0x7d94,0x4fec,{0x87,0x3e,0x6c,0xd1,0xcd,0x42,0x0d,0xcd}} DBPROPSET_DB2DATASOURCE tem três propriedades: * DB2PROP_REPORTISLONGFORLONGTYPES * DB2PROP_RETURNCHARASWCHAR * DB2PROP_SORTBYORDINAL DB2PROP_REPORTISLONGFORLONGTYPES #define DB2PROP_REPORTISLONGFORLONGTYPES 4 Grupo de propriedades: DB2 Data Source Conjunto de propriedades: DB2PROPSET_DATASOURCE Tipo: VT_BOOL R/W típico: R/W Descrição: Relata IsLong para Tipos Longos O mecanismo do cursor de cliente do OLE DB e o CommandBuilder do OLE DB .NET Data Provider geram instruções de atualização e exclusão com base nas informações da coluna fornecidas pelo IBM DB2 OLE DB Provider. Se a instrução gerada contiver um tipo LONG na cláusula WHERE, a instrução irá falhar porque os tipos LONG não podem ser utilizados em uma procura com um operador de igualdade. Tabela 27. Valores DB2PROP_REPORTISLONGFORLONGTYPES +----------------+----------------------------------------------------+ | Valores | Significado | +----------------+----------------------------------------------------+ | VARIANT_TRUE | Fará com que o IBM DB2 OLE DB Provider relate | | | tipos LONG (LONG VARCHAR, LONG VARCHAR FOR BIT | | | DATA, LONG VARGRAPHIC e LONG VARGRAPHIC FOR BIT | | | DATA) com o conjunto de sinalizadores | | | DBCOLUMNFLAGS_ISLONG. Isso impedirá que as colunas | | | longas sejam utilizadas na cláusula WHERE. | +----------------+----------------------------------------------------+ | VARIANT_FALSE | DBCOLUMNFLAGS_ISLONG não é definido para LONG | | | VARCHAR, LONG VARCHAR FOR BIT DATA, LONG | | | VARGRAPHIC e LONG VARGRAPHIC FOR BIT DATA. Este é | | | o padrão. | +----------------+----------------------------------------------------+ DB2PROP_RETURNCHARASWCHAR #define DB2PROP_RETURNCHARASWCHAR 2 Grupo de propriedades: DB2 Data Source Conjunto de propriedades: DB2PROPSET_DATASOURCE Tipo: VT_BOOL R/W típico: R/W Descrição: Retornar Char como WChar Tabela 28. Valores DB2PROP_RETURNCHARASWCHAR +----------------+----------------------------------------------------+ | Valores | Significado | +----------------+----------------------------------------------------+ | VARIANT_TRUE | OLE DB descreve colunas do tipo CHAR, VARCHAR, | | | LONG VARCHAR ou CLOB como DBTYPE_WSTR. A página de | | | códigos de dados implicada em ISequentialStream | | | será UCS-2. Este é o padrão. | +----------------+----------------------------------------------------+ | VARIANT_FALSE | OLE DB descreve colunas do tipo CHAR, VARCHAR, | | | LONG VARCHAR ou CLOB como DBTYPE_STR. A página de | | | códigos de dados implicada em ISequentialStream | | | será a página de códigos local do cliente. | +----------------+----------------------------------------------------+ DB2PROP_SORTBYORDINAL #define DB2PROP_SORTBYORDINAL 3 Grupo de propriedades: DB2 Data Source Conjunto de propriedades: DB2PROPSET_DATASOURCE Tipo: VT_BOOL R/W típico: R/W Descrição: Classificar Por Ordinal A especificação OLE DB da Microsoft requer que IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) retorne o conjunto de linhas classificado pelas colunas TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME. O IBM DB2 OLE DB Provider está de acordo com a especificação. Porém, os aplicativos que utilizam o provedor Microsoft ODBC Bridge (MSDASQL) foram tipicamente codificados para obter o conjunto de linhas classificado pelo ORDINAL_POSITION. Tabela 29. Valores DB2PROP_SORTBYORDINAL +----------------+----------------------------------------------------+ | Valores | Significado | +----------------+----------------------------------------------------+ | VARIANT_TRUE | Fará com que o provedor retorne um conjunto de | | | linhas classificado pelo ORDINAL_POSITION. | +----------------+----------------------------------------------------+ | VARIANT_FALSE | Fará com que o provedor retorne um conjunto de | | | linhas classificado pelo TABLE_CATALOG, | | | TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME. Este é o | | | padrão. | +----------------+----------------------------------------------------+ Sintaxe de URL Incorreta no Diagrama de Sintaxe DB2Binder No tópico "Instalando o DB2 Universal JDBC Driver", o diagrama de sintaxe DB2Binder define incorretamente a sintaxe de URL para o DB2 Universal JDBC Driver. A representação correta da sintaxe de URL para DB2Binder é mostrada no diagrama a seguir: Sintaxe DB2Binder +----------------------------------------------------------------------+ | >>-java--com.ibm.db2.jcc.DB2Binder------------------------------> | | | | >---url jdbc:db2://server-+----------+-/database----------------> | | '-:--ports-' | | | | >---user user-ID---password password--+---------------+---------> | | '--size integer-' | | | | >--+-----------------------------+------------------------------> | | '--collection collection-name-' | | | | >--+-------------------------------+--+-------+---------------->< | | | .-,------------. | '--help-' | | | V | | | | '--tracelevel ---trace-option-+-' | +----------------------------------------------------------------------+ Novo Roteamento Clientes do DB2 Universal JDBC Driver O recurso de rovo roteamento de cliente automático no DB2 UDB (Universal Database) para Linux, UNIX, e Windows permite que os aplicativos clientes se recuperem de uma perda de comunicação com o servidor para que eles possam continuar a funcionar com interrupção mínima. Sempre que um servidor trava, cada cliente conectado a ele recebe um erro de comunicação, que encerra a conexão e resulta em um erro de aplicativo. Quando a disponibilidade é importante, você deve ter uma configuração redundante e suporte a failover. (Failover é a capacidade de um servidor de tomar o controle de operações quando outro servidor falha). Em qualquer caso, o cliente do DB2 Universal JDBC Driver tenta restabelecer a conexão com um novo servidor ou com o servidor original, que pode estar em execução em um nó de failover. Quando a conexão é restabelecida, o aplicativo recebe uma SQLException que o informa sobre o defeito da transação, mas o aplicativo pode continuar com a próxima transação. Restrições * O suporte ao novo roteamento do cliente do DB2 Universal JDBC Driver está disponível apenas para conexões que utilizam a interface javax.sql.DataSource. * Antes que um aplicativo cliente possa se recuperar de uma perda de comunicação, uma localização de servidor alternativo deve ser especificada no servidor. O administrador de banco de dados especifica o servidor alternativo com o comando UPDATE ALTERNATE SERVER FOR DATABASE. Procedimento Depois que o administrador de banco de dados especifica a localização do servidor alternativo em um banco de dados particular na instância do servidor, as localizações do servidor principal e do alternativo serão retornadas ao cliente no momento da conexão. O driver DB2 Universal JDBC cria uma instância do objeto Referenciável DB2ClientRerouteServerList e armazena essa instância em sua memória temporária. Se a comunicação for perdida, o driver DB2 Universal JDBC tentará restabelecer a conexão utilizando as informações do servidor retornadas do servidor. A propriedade clientRerouteServerListJNDIName DataSource fornece suporte adicional de novo roteamento de cliente no cliente; clientRerouteServerListJNDIName tem duas funções: * Permite que as informações do servidor alternativo persistam nas JVMs * Fornece uma localização de servidor alternativo no caso da primeira conexão com o servidor de banco de dados falhar O clientRerouteServerListJNDIName identifica uma referência JNDI a uma instância DB2ClientRerouteServerList em um repositório JNDI para informações do servidor alternativo. Depois de uma conexão bem-sucedida com o servidor principal, as informações do servidor alternativo que são fornecidas pelo clientRerouteServerListJNDIName são sobrescritas pelas informações do servidor. O driver DB2 Universal JDBC tentará propagar as informações atualizadas para o armazenamento de JNDI depois de um failover se a propriedade clientRerouteServerListJNDIName for definida. Se clientRerouteServerListJNDIName for especificada, as informações do servidor principal especificadas no DB2ClientRerouteServerList serão utilizadas para conexão. Se o servidor principal não for especificado, as informações serverName especificadas sobre a origem de dados serão utilizadas. DB2ClientRerouteServerList é um bean Java serializável com quatro propriedades: * alternateServerName * alternatePortNumber * primaryServerName * primaryPortNumber São fornecidos os métodos getter e setter para acessar essas propriedades. A definição da classe DB2ClientRerouteServerList é a seguinte: package com.ibm.db2.jcc; public class DB2ClientRerouteServerList implements java.io.Serializable, javax.naming.Referenceable { public String[] alternateServerName; public synchronized void setAlternateServerName(String[] alternateServer); public String[] getAlternateServerName(); public int[] alternatePortNumber; public synchronized void setAlternatePortNumber(int[] alternatePortNumberList); public int[] getAlternatePortNumber(); public synchronized void setPrimaryServerName (String primaryServerName); public String getPrimaryServerName (); public synchronized void setPrimaryPortNumber (int primaryPortNumber) public int getPrimaryPortNumber (); } Uma conexão de failover estabelecida recentemente é configurada com as propriedades da origem de dados originais, exceto para o nome do servidor e o número da porta. Além disso, quaisquer registros especiais do DB2 UDB modificados durante a conexão original são restabelecidos na conexão de failover pelo driver DB2 Universal JDBC. Quando ocorre um defeito de comunicação, o driver DB2 Universal JDBC primeiro tenta a recuperação para o servidor principal. Se isso falhar, o driver tentará se conectar à localização alternativa (failover). Depois que uma conexão é restabelecida, o driver lança uma java.sql.SQLException para o aplicativo com SQLCODE -4498, para indicar ao aplicativo que a conexão com o servidor alternativo foi automaticamente restabelecida. O aplicativo pode então tentar novamente sua transação. Procedimento para Tornar o DB2ClientRerouteServerList Persistente Para configurar o armazenamento para tornar o DB2ClientRerouteServerList persistente, siga essas etapas: 1. Crie uma instância de DB2ClientRerouteServerList e ligue essa instância ao registro JNDI. Por exemplo: // Criar um contexto inicial para operações de nomenclatura InitialContext registry = new InitialContext(); // Criar um objeto DB2ClientRerouteServerList DB2ClientRerouteServerList address=new DB2ClientRerouteServerList(); // Definir o número da porta e o nome do servidor para o servidor principal address.setPrimaryPortNumber(50000); address.setPrimaryServerName("mvs1.sj.ibm.com"); // Definir o número da porta e o nome do servidor para o servidor alternativo int[] port = {50002}; String[] server = {"mvs3.sj.ibm.com"}; address.setAlternatePortNumber(port); address.setAlternateServerName(server); registry.rebind("serverList", address); 2. Atribua o nome JNDI do objeto DB2ClientRerouteServerList para a propriedade de DataSource clientRerouteServerListJNDIName. Por exemplo: datasource.setClientRerouteServerListJNDIName("serverList"); Customizando as Propriedades de Configuração do DB2 Universal JDBC Driver As propriedades de configuração do driver DB2 Universal JDBC permitem definir valores de propriedades que têm escopo em todo o driver. Estas definições se aplicam a aplicativos e instâncias DataSource. Você pode alterar as definições sem precisar alterar o código fonte do aplicativo ou as características do DataSource. Cada definição de propriedade de configuração do driver DB2 Universal JDBC possui o seguinte formato: property=value Se a propriedade de configuração começar com db2.jcc.override, ela será aplicável a todas as conexões e substituirá qualquer propriedade Connection ou DataSource pelo mesmo nome de propriedade. Se a propriedade de configuração começar com db2.jcc ou com db2.jcc.default, o valor dela será um padrão. As definições da propriedade Connection ou DataSource substituem esse valor. Procedimento Para definir propriedades de configuração: * Defina as propriedades de configuração como propriedades do sistema Java. Estas definições substituem quaisquer outras definições. Para aplicativos Java independentes, você pode definir as propriedades de configuração como propriedades do sistema Java especificando -Dproperty=value para cada propriedade de configuração quando executar o comando java. * Defina as propriedades de configuração em um recurso cujo nome você especifica na propriedade do sistema Java db2.jcc.propertiesFile. Por exemplo, você pode especificar um nome de caminho absoluto para o valor db2.jcc.propertiesFile. Para aplicativos Java independentes, você pode definir as propriedades de configuração especificando a opção -Ddb2.jcc.propertiesFile=path quando executar o comando java. * Defina as propriedades de configuração em um recurso denominado DB2JccConfiguration.properties. Uma procura de recursos Java padrão é utilizada para localizar DB2JccConfiguration.properties. O driver DB2 Universal JDBC procurará este recurso apenas se você não tiver definido a propriedade do sistema Java db2.jcc.propertiesFile. DB2JccConfiguration.properties pode ser um arquivo independente ou pode ser incluído em um arquivo JAR. Se DB2JccConfiguration.properties for um arquivo independente, o caminho para DB2JccConfiguration.properties deverá estar na concatenação de CLASSPATH. Se DB2JccConfiguration.properties estiver e um arquivo JAR, o arquivo JAR deverá estar na concatenação de CLASSPATH. É possível definir as seguintes propriedades de configuração do driver DB2 Universal JDBC. Todas as propriedades são opcionais. db2.jcc.override.traceFile Ativa o rastreio do driver DB2 Universal JDBC para o código do driver Java e especifica o nome no qual os nomes de arquivos de rastreio são baseados. Especifique um nome completo de arquivo para o valor da propriedade db2.jcc.override.traceFile. A propriedade db2.jcc.override.traceFile substitui a propriedade traceFile para um objeto Connection ou DataSource. Por exemplo, a especificação da seguinte definição para db2.jcc.override.traceFile ativa o rastreio do código Java do DB2 Universal JDBC Driver para um arquivo denominado /SYSTEM/tmp/jdbctrace: db2.jcc.override.traceFile=/SYSTEM/tmp/jdbctrace É necessário definir as propriedades de rastreio de acordo com as instruções do Suporte ao Software IBM. db2.jcc.sqljUncustomizedWarningOrException Especifica a ação que o driver DB2 Universal JDBC toma quando um aplicativo SQLJ não personalizado é executado. db2.jcc.sqljUncustomizedWarningOrException pode ter os seguintes valores: 0 O driver DB2 Universal JDBC não gera um Aviso ou uma Exceção quando um aplicativo SQLJ não personalizado é executado. Este é o padrão. 1 O driver DB2 Universal JDBC gera um Aviso quando um aplicativo SQLJ não personalizado é executado. 2 O driver DB2 Universal JDBC gera uma Exceção quando um aplicativo SQLJ não personalizado é executado. Função db2secFreeToken Removida A função db2secFreeToken (Memória livre mantida retida por token) não faz mais parte da API do plug-in de autenticação do usuário db2secGssapiServerAuthFunctions_1. Implementar Plug-ins de Segurança Customizados Cuidadosamente A integridade da instalação do DB2 UDB (Universal Database) poderá ser comprometida se a implementação dos plug-ins de segurança não for adequadamente codificada, revisada e testada. O DB2 UDB toma precauções contra muitos tipos comuns de defeitos, mas não pode garantir a integridade completa quando plug-ins de segurança gravados pelo usuário são implementados. Plug-ins de Segurança Se estiver utilizando seu próprio plug-in de segurança personalizado, você poderá utilizar um ID do usuário com até 255 caracteres em uma instrução connect emitida através do CLP ou uma instrução SQL dinâmica. APIs de Plug-ins de Segurança Para as APIs db2secGetGroupsForUser, db2secValidatePassword e db2secGetAuthIDs, o parâmetro de entrada, dbname, pode ser nulo e seu parâmetro de entrada de comprimento correspondente, dbnamelen, será definido como 0. Convenções de Nomenclatura de Plug-in de Segurança (Linux e UNIX) .so é, agora, aceito como uma extensão de nome de arquivo para bibliotecas de plug-in de segurança gravadas pelo usuário em todas as plataformas Linux e UNIX. No AIX, as bibliotecas do plug-in de segurança podem ter uma extensão de .a ou .so. Se existirem as duas versões da biblioteca de plug-ins, será utilizada a versão .a. Para HP-UX no PA-RISC, as bibliotecas de plug-ins de segurança podem ter uma extensão .sl ou .so. Se existirem as duas versões da biblioteca de plug-ins. será utilizada a versão .sl. Em todas as outras plataformas Linux e UNIX, .so é a única extensão de nome de arquivo suportada para bibliotecas do plug-in de segurança. Restrições para Bibliotecas de Plug-ins de Segurança No AIX, as bibliotecas do plug-in de segurança podem ter uma extensão de nome de arquivo de .a ou .so. O mecanismo utilizado para carregar a biblioteca de plug-ins depende da extensão utilizada: Bibliotecas de Plug-ins com uma Extensão de Nome de Arquivo .a As bibliotecas de plug-ins com extensões de nomes de arquivos .a são considerada archives contendo membros de objetos compartilhados. Estes membros devem ser denominados shr.o (32 bits) ou shr64.o (64 bits). Um único archive pode conter os membros de 32 bits e de 64 bits, permitindo sua implementação nos dois tipos de plataformas. Por exemplo, para construir uma biblioteca de plug-ins de estilo de archive de 32 bits: xlc_r -qmkshrobj -o shr.o MyPlugin.c -bE:MyPlugin.exp ar rv MyPlugin.a shr.o Bibliotecas de Plug-ins com uma Extensão de Nome de Arquivo .so As bibliotecas de plug-ins com extensões de nomes de arquivos .so são consideradas objetos compartilhados dinamicamente carregáveis. Tal objeto possui 32 ou 64 bits, dependendo das opções de compilador e de linker utilizadas durante sua construção. Por exemplo, para construir uma biblioteca de plug-ins de 32 bits: xlc_r -qmkshrobj -o MyPlugin.so MyPlugin.c -bE:MyPlugin.exp Em todas as plataformas diferentes de AIX, as bibliotecas do plug-in de segurança são sempre consideradas objetos compartilhados dinamicamente carregáveis. Suporte ao Plug-in GSS-API para o DB2 Universal JDBC Driver Com o release do DB2 UDB Versão 8.2 para Linux, UNIX, Windows, você pode criar seus próprios mecanismos de autenticação em forma de plug-ins (bibliotecas carregáveis). O mecanismo do DB2 UDB carrega e acessa estes plug-ins para desempenhar autenticação do usuário. Para suportar aplicativos de cliente gravados em Java, o DB2 Universal JDBC Driver fornece suporte a plug-ins de segurança no DB2 UDB V8.2, FixPak 4. Para aplicativos Java que utilizam o DB2 Universal JDBC Driver para desempenhar autenticação de plug-in, os usuários precisam implementar seu próprio plug-in, estendendo a classe abstrata com.ibm.db2.jcc.DB2JCCPlugin e configurando as seguintes propriedades: * ID do usuário e senha: estes são as credenciais a serem utilizadas para autenticação * Nome do Plug-in: especifica o nome do módulo de plug-in no lado do servidor * Mecanismo de segurança: deve ser configurado como a segurança do plug-in * Plug-in: especifica o módulo de plug-in no lado do aplicativo cliente Observe o seguinte exemplo: java.util.Properties properties = new java.util.Properties(); properties.put("user", "db2admin"); properties.put("password", "admindb2"); properties.put("pluginName", "gssapi_simple"); properties.put("securityMechanism", new String(""+com.ibm.db2.jcc.DB2BaseDataSource.PLUGIN_SECURITY+"")); properties.put("plugin", new JCCSimpleGSSPlugin()); Connection con = java.sql.DriverManager.getConnection(url, properties); Os Plug-ins de Segurança GSS-API Não Suportam Autenticação de Vários Fluxos A autenticação GSS-API é limitada a enviar fluxo de um token do cliente para o servidor e um token do servidor para o cliente. Esses tokens são obtidos de gss_init_sec_context() no cliente e de gss_accept_sec_context() no servidor. Os plug-ins GSS-API que estão tentando fluxos adicionais irão gerar um erro inesperado de plug-in de segurança, fazendo com que a conexão falhe. Os Plug-ins de Segurança GSS-API Não Suportam Criptografia e Assinatura de Mensagens A criptografia e a assinatura de mensagens não estão disponíveis em plug-ins de segurança GSS-API. Encerramento Implícito de Transações em Aplicativos Independentes Os encerramentos de aplicativos (normais e anormais) revertem implicitamente unidades de trabalho pendentes, independentemente do sistema operacional. Suporte a Transações Distribuídas Na documentação das novidades para o DB2 UDB (Universal Database) Versão 8.2, as informações de suporte à transação distribuídas para a seção de aprimoramentos do driver DB2 Universal JDBC possuem informações incorretas. A última frase dessa seção está incorreta. As informações corretas são: A partir da Versão 8.2, o DB2 UDB fornece suporte ao processamento de transações distribuídas que está de acordo com a especificação XA. Esse suporte implementa as especificações do J2EE (Java 2 Platform, Enterprise Edition) JTS (Java Transaction Service) e JTA (Java Transaction API). Desenvolvimento de Aplicativos: Aplicativos de Servidor de Programação Procedimentos CLR (Common Language Runtime) de Vários Conjuntos de Resultados O número máximo de conjuntos de resultados que pode ser retornado por um procedimento CLR (Common Language Runtime) é limitado. O limite é determinado pelo número máximo de objetos DB2DataReader que o provedor de dados DB2 .NET pode suportar simultaneamente, estando aberto em uma conexão. O suporte à leitora de dados ativos simultâneos permite que vários objetos DB2DataReader sejam abertos em uma conexão. Assim, vários conjuntos de resultados podem ser retornados de um procedimento CLR. Modos de Controle de Execução de Rotinas CLR (Common Language Runtime) (Cláusula EXECUTION CONTROL) Como administrador do banco de dados ou desenvolvedor de aplicativos, talvez você queira proteger as montagens associadas a suas rotinas externas do DB2 UDB (Universal Database) contra violações indesejadas restringindo as ações de rotinas no tempo de execução. As rotinas do DB2 .NET CLR suportam a especificação de um modo de controle de execução que identifica quais tipos de ações uma rotina tem permissão para executar no tempo de execução. No tempo de execução, o DB2 UDB pode detectar se a rotina tenta executar ações além do escopo do seu modo de controle de execução especificado, o que pode ser útil ao determinar se uma montagem foi comprometida. Para definir o modo de controle de execução de uma rotina CLR, especifique a cláusula EXECUTION CONTROL opcional na instrução CREATE da rotina. Os modos válidos são: * SAFE * FILEREAD * FILEWRITE * NETWORK * UNSAFE Para modificar o modo de controle de execução em uma rotina CLR existente, execute a instrução ALTER PROCEDURE ou ALTER FUNCTION. Se a cláusula EXECUTION CONTROL não for especificada para uma rotina CLR, por padrão, a rotina CLR é executada utilizando o modo de controle de execução mais restritivo, SAFE. As rotinas criadas com este modo de controle de execução podem acessar apenas os recursos que são controlados pelo gerenciador do banco de dados. Os modos de execução menos restritivos permitem que uma rotina acesse arquivos no sistema de arquivos local (FILEREAD ou FILEWRITE) ou na rede. O modo de controle de execução UNSAFE especifica que não devem ser colocadas restrições no comportamento da rotina. As rotinas definidas com o modo de controle de execução UNSAFE podem executar o código binário. Estes modos de controle representam uma hierarquia de ações permitidas e um modo de nível mais alto inclui as ações permitidas abaixo dele na hierarquia. Por exemplo, o modo de controle de execução NETWORK permite que uma rotina acesse arquivos na rede, arquivos no sistema de arquivos local e recursos que são controlados pelo gerenciador do banco de dados. Utilize o modo de controle de execução mais restritivo e evite utilizar o modo UNSAFE. Se o DB2 UDB detectar, no tempo de execução, que uma rotina CLR está tentando uma ação fora do escopo do seu modo de controle de execução, o DB2 UDB retornará um erro (SQLSTATE 38501). A cláusula EXECUTION CONTROL pode ser especificada apenas para rotinas CLR LANGUAGE. O escopo de aplicabilidade da cláusula EXECUTION CONTROL está limitado à própria rotina CLR .NET e não se estende a nenhuma outra rotina que possa ser chamada. Precisão e Escala Decimais Máximas em Rotinas CLR (Common Language Runtime) O tipo de dados DECIMAL no DB2 UDB (Universal Database) é representado com uma precisão de 31 dígitos e uma escala de 28 dígitos. O tipo de dados .NET CLR System.Decimal está limitado a uma precisão de 29 dígitos e a uma escala de 28 dígitos. Portanto, as rotinas CLR externas do DB2 UDB não devem designar um valor maior que (2^96)-1, o valor mais alto que pode ser representado utilizando uma precisão de 29 dígitos e uma escala de 28 dígitos, para uma variável de tipo de dados System.Decimal. O DB2 UDB gera um erro de tempo de execução (SQLSTATE 22003, SQLCODE -413) se ocorrer tal designação. Quando uma instrução CREATE de rotina é executada, se um parâmetro de tipo de dados DECIMAL é definido com uma escala maior que 28, o DB2 UDB gera um erro (SQLSTATE 42611, SQLCODE -604). Referência a Comandos db2licm - Esclarecimento do Parâmetro do Comando de Ferramentas de Gerenciamento de Licença A atualização deste documento aplica-se ao parâmetro -p do comando db2licm. A palavra-chave MEASURED não é mais válida e é ignorada pelo DB2. Exemplo do Comando RESTORE DATABASE do TSM O exemplo para o TSM (exemplo 6) não possui aspas simples ao redor das opções do TSM e afirmará: * Especificando uma cadeia delimitada: a restauração do db2 da amostra do bd utiliza as opções do TSM "'-fromnode bar -fromowner dmcinnis'" Exemplos de Uso de db2demigdbd Os exemplos de utilização de db2demigdbd a seguir são mostrados organizados por sistema operacional. Para cancelar migração de arquivos do diretório de banco de dados do sistema no UNIX e Linux: db2demigdbd $HOME/sqllib 1 Para cancelar migração de arquivos do diretório de banco de dados do sistema local no UNIX e Linux: db2demigdbd ~/user/NODE0000 1 Para cancelar migração de arquivos do sistema e de todos os diretórios de banco de dados local na instância no UNIX e Linux: db2demigdbd $HOME/sqllib 2 Para cancelar migração de arquivos do diretório de banco de dados do sistema no Windows: db2demigdbd d:\sqllib\db2 1 em que db2 é a instância atual. Para cancelar migração de arquivos do diretório de banco de dados do sistema local no Windows: db2demigdbd d:\db2\NODE0000 1 Para cancelar migração de arquivos do sistema e de todos os diretórios de banco de dados local na instância no Windows: db2demigdbd d:\sqllib\db2 2 Notas de Uso: Depois de executar o comando db2updv8 para atualizar os catálogos do sistema para o nível atual da Versão 8, o retorno à V 8.1 não é suportado. Informações Adicionais: Para obter um exemplo de como executar o comando em um ambiente DPF (Database Partitioning Feature), consulte o technote localizado em http://www.ibm.com/support/docview.wss?rs=71&uid=swg21217949 Correção de Nota de Uso do Comando db2ckbkp A opção '-p' exibe o número de páginas de cada tipo de objeto. No entanto, a saída para o comando db2ckbkp com a opção '-p' não mostrará o número de páginas para todos os diferentes tipos de objetos, se o backup tiver sido feito para dados de espaços de tabelas DMS. Neste caso, exibe apenas o total de todas as páginas como SQLUDMSTABLESPACEDATA. O valor zero é exibido para SQLUDMSLOBDATA e SQLUDMSLONGDATA para espaços de tabelas DMS. Aqui está uma seção de saída de amostra de db2ckbkp -p com o backup feito para dados de espaços de tabelas DMS: SQLUDMSTABLESPACEDATA (0c): 87 SQLUDMSLOBDATA (0e): 0 SQLUDMSLONGDATA (0f): 0 Convenções de Nomenclatura para Objetos de Banco de Dados e para IDs As convenções a seguir se aplicam ao nomear objetos do gerenciador de banco de dados, como bancos de dados e tabelas. * Cadeias de caracteres que representam nomes de objetos do gerenciador de banco de dados podem conter qualquer um dos seguintes caracteres: a-z, A-Z, 0-9, @, # e $. * A menos que seja indicado de outra maneira, você pode digitar nomes em letras minúsculas; no entanto, o gerenciador de banco de dados as processa como se fossem maiúsculas. A exceção para esta convenção são cadeias de caracteres que representam nomes na SNA (Systems Network Architecture). Muitos valores fazem distinção entre maiúsculas e minúsculas, tais como nomes de unidades lógicas (partner_lu e local_lu). O nome deve ser digitado exatamente como aparece nas definições SNA que correspondem a esses termos. * Um nome de banco de dados ou alias de banco de dados é uma cadeia de caracteres exclusiva que contém de uma a oito letras, números ou caracteres do teclado do conjunto descrito nas informações anteriores. Os bancos de dados são catalogados no sistema e em diretórios de banco de dados local por seus aliases em um campo e por seu nome original em outro. Para a maioria das funções, o gerenciador de banco de dados utiliza o nome digitado no campo de alias dos diretórios de banco de dados. As exceções são CHANGE DATABASE COMMENT e CREATE DATABASE, em que um caminho de diretório deve ser especificado. * O nome ou nome do alias de uma tabela ou uma visualização é um identificador SQL que é uma cadeia de caracteres exclusiva contendo de 1 a 128 caracteres. Os nomes de colunas podem ter de 1 a 30 caracteres. Um nome completo de tabela consiste em schema.tablename. O esquema é o ID do usuário exclusivo com o qual a tabela foi criada. O nome do esquema para uma tabela temporária declarada deve ser SESSION. * Aliases locais para nós remotos que devem ser catalogados no diretório do nó não podem exceder oito caracteres. * O primeiro caractere na cadeia deve ser um caractere alfabético, @, # ou $; não pode ser um número ou as seqüências de letras SYS, DBM ou IBM. As convenções a seguir se aplicam ao nomear IDs do usuário e IDs de autenticação. * As cadeias de caracteres que representam nomes de objetos do gerenciador de banco de dados podem conter qualquer um dos seguintes: a-z, A-Z, 0-9, @, # e $. * Os IDs do usuário e grupos também podem conter qualquer um dos seguintes caracteres adicionais quando suportados pelo plug-in de segurança: _, !, %, (, ), {, }, -, ., ^. * Os IDs do usuário e grupos que contêm qualquer um dos seguintes caracteres devem ser delimitados por aspas quando digitados no processador de linha de comandos: !, %, (, ), {, }, -, ., ^, * O primeiro caractere na cadeia deve ser um caractere alfabético, @, # ou $; não pode ser um número ou as seqüências de letras SYS, DBM ou IBM. * Os IDs de autenticação não podem exceder 30 caracteres no Sistemas operacionais Windows de 32 bits e 8 caracteres em todos os demais sistemas operacionais. * Os IDs do grupo não podem exceder 30 caracteres. Comando REORGCHK As fórmulas de estatísticas de índice utilizadas no comando REORGCHK foram revisadas. As novas fórmulas e suas explanações são: * Fórmula F5: 100 * (KEYS * (ISIZE + LEAF_REC_OVERHEAD) + (CARD - KEYS) * DUPKEYSIZE ) / ((NLEAF - NUM EMPTY LEAFS - 1) * (INDEXPAGESIZE - 96) > MIN(50, (100 - PCTFREE)) em que LEAF_REC_OVERHEAD = 9 e DUPKEYSIZE = 5. A reorganização é recomendada se houver mais de 50 por cento de espaço livre no índice ou mais de PCTFREE% de espaço livre no índice se PCTFREE for maior que 50. Essa fórmula é verificada somente se o valor de NLEAF - NUM EMPTY LEAFS - 1 for maior que 0. (Um é subtraído do valor de NLEAF porque a última página da folha alocada normalmente não é preenchida.) * Fórmula F6: (100 - PCTFREE) * [ Floor((100 - min(10, PCTFREE)) / 100 * (INDEXPAGESIZE - 96) / (ISIZE + NONLEAF_REC_OVERHEAD)) ** (NLEVELS - 2)] * (INDEXPAGESIZE - 96) / (KEYS * (ISIZE + LEAF_REC_OVERHEAD) + (CARD - KEYS) * DUPKEYSIZE) < 100 em que NONLEAF_REC_OVERHEAD = 12. Para determinar se a recriação do índice resultaria em uma árvore que contivesse menos níveis. Essa fórmula verifica a proporção entre a quantidade de espaço em uma árvore que contenha um nível a menos que a árvore atual e a quantidade de espaço necessário. Se uma árvore com um nível a menos pudesse ser criada e continuasse a manter o PCTFREE disponível, uma reorganização é recomendada. O número atual de entradas do índice deve ser maior que 90% (ou 100 - PCTFREE) do número de entradas que uma árvore de índice NLEVELS - 1 pode manipular (apenas verificado se NLEVELS > 1). Nota: Todas as fórmulas são baseadas em estatísticas. As estatísticas e os resultados dessas fórmulas são apenas estimados. Você deve rever os resultados de REORGCHK com o conhecimento dessa informação. Comando REORG INDEXES/TABLE Reorganiza um índice ou uma tabela. A opção REORG INDEXES ALL FOR TABLE reorganiza todos os índices que são definidos em uma tabela reconstruindo os dados de índice em páginas fisicamente contínuas e desfragmentadas. Se você especificar a opção CLEANUP ONLY da opção índice, a limpeza é desempenhada sem a reconstrução dos índices. Se você tentar utilizar esse comando em oposição aos índices em tabelas temporárias declaradas, o erro SQLSTATE 42995 será retornado. A opção table-name REORG TABLE reorganiza uma tabela reconstruindo as linhas para eliminar dados fragmentados e compactando informações. A reorganização da tabela é feita por um dos dois métodos: Clássico Permite apenas acesso de leitura limitado para os dados durante as primeiras fases da reorganização. Local Permite acesso aos dados durante a reorganização mas sem ser capaz de assegurar dados ordenados perfeitamente. A reorganização de tabela local é permitida apenas em tabelas com índices do tipo 2 e sem índices estendidos. Ao escolher ambos os tipos de reorganização, os índices da tabela são reconstruídos após a tabela ser reorganizada. Porém, com o método local, o índice será reorganizado imperfeitamente e pode requerer que você reorganize os índices para reduzir a fragmentação dele e para solicitar espaço de objeto do índice. Exemplo Para um REORG TABLE clássico (off-line) como o padrão no DB2 UDB (Universal Database(TM)) Versão 7, digite o seguinte comando db2 reorg table employee index empid allow no access indexscan longlobdata Nota: Os padrões são diferentes no DB2 UDB Versão 8. Notas de Uso O DB2 UDB oferece dois métodos para reorganização de tabelas: clássico e local. Em geral, a reorganização de tabela clássica é mais rápida, mas deve ser utilizada somente com a função de aplicativos sem acesso de gravação para tabelas durante a reorganização. Se o seu ambiente não permitir essa restrição, ainda que a reorganização local seja mais lenta, ela pode ocorrer no segundo plano enquanto o acesso a dados normal é realizado. A reorganização da tabela clássica é mais rápida, especialmente se você não precisar reorganizar dados LOB ou LONG. Além disso, os índices são reconstruídos em ordem perfeita após a tabela ser reorganizada. Aplicativos de leitura podem acessar a cópia original da tabela excluída durante as últimas fases da reorganização, na qual a tabela permanente substitui a cópia shadow da tabela e os índices são reconstruídos. A reorganização de tabela local é mais lenta e não garante que os dados sejam organizados perfeitamente, mas ela pode permitir que os aplicativos acessem a tabela durante a reorganização. Além disso, a reorganização de tabela local pode ser pausada e reiniciada mais tarde pelas pessoas que tenham autoridade apropriada, utilizando esquema e o nome da tabela. Restrições de Atualização O utilitário REORG não suporta a utilização de pseudônimos. * O comando REORG TABLE não é suportado por tabelas temporariamente declaradas. * O comando REORG TABLE não pode ser utilizado em visualizações. * A reorganização de uma tabela não é compatível com tabelas agrupadas em intervalo, porque a área de intervalo de uma tabela permanece sempre agrupada. * A reorganização de tabela off-line não permite a inicialização de uma operação de backup on-line de um espaço de tabelas no qual a tabela reside enquanto ocorre a reorganização. * A reorganização de tabela on-line de uma tabela SMS não permite a inicialização de uma operação de backup on-line de um espaço de tabelas no qual a tabela reside enquanto ocorre a reorganização. * A reorganização de tabela on-line de uma tabela DMS permite a inicialização da operação de backup on-line de um espaço de tabelas no qual a tabela reside enquanto ocorre a reorganização. Onde provavelmente pode haver bloqueios pendentes da operação de reorganização durante a fase de truncamento. * O REORG TABLE não pode utilizar um índice baseado em uma extensão do índice. Comando BACKUP DATABASE Notas de Uso Observe as restrições a seguir: * A inicialização de uma operação de backup on-line de um espaço de tabela DMS é permitida quando uma tabela dentro do mesmo espaço de tabela está sendo reorganizada on-line. Onde provavelmente pode haver bloqueios pendentes da operação de reorganização durante a fase de truncamento. * A inicialização de uma operação de backup on-line de um espaço de tabela SMS não é permitida quando uma tabela dentro do mesmo espaço de tabela está sendo reorganizada on-line. Ambas as operações requerem um bloqueio exclusivo. Migrando Bancos de Dados Restrições A documentação da Versão 8 afirma ambiguamente que nenhuma migração de banco de dados é requerida, se o banco de dados foi migrado para um nível de FixPak do DB2 UDB Versão 8. Para ser específico, a migração de banco de dados não é requerida entre fixpaks, visto que o banco de dados está em um nível da Versão 8 (Versão 8.1 ou 8.2 ou um fixpak subseqüente). Há alterações para a estrutura de arquivos do diretório do banco de dados na Versão 8.2 e a migração é executada automaticamente ao mover da Versão 7 ou 8.1 para a Versão 8.2. No entanto, para retornar da Versão 8.2 para a Versão 8.1, é necessário executar db2demigdbd para restaurar a estrutura de arquivos do diretório do banco de dados. A falha em fazê-lo resultará no erro SQL10004 ao tentar acessar o banco de dados. db2inidb - Inicializar um Comando de um Banco de Dados Espelhado Não emita o comando db2 connect to database antes de emitir o comando db2inidb database as mirror. A tentativa de conexão com um banco de dados de espelho de divisão antes de sua inicialização apaga os arquivos de registro necessários para recuperação de avanço. A conexão define o retorno do banco de dados ao estado em que ele se encontrava quando você suspendeu o banco de dados. Se o banco de dados estiver marcado como consistente no momento da suspensão, o DB2 Universal Database concluirá que não há necessidade para uma recuperação de travamento e esvaziará os registros para utilização futura. Se isso acontecer, uma tentativa de rollforward causará um erro SQL4970. Nota de Uso para o Comando db2iupdt A partir da Versão 8.2, ao atualizar uma instância do DB2 Universal Database com o comando db2iupdt, você deve, primeiro, parar todos os processos do DB2 em execução nessa instância. Novo Parâmetro para o Comando db2sqljcustomize O comando db2sqljcustomize possui um novo parâmetro. db2sqljcustomize - Comando SQLJ Profile Customizer do DB2 -storebindoptions Armazena o valor dos valores -bindoptions e -staticpositioned no perfil serializado. Se estes valores não estiverem especificados durante a chamada da ferramenta dbsqljbind, os valores armazenados no perfil serializado serão utilizados. Quando o Personalizador for chamado com o arquivo .grp, os valores serão armazenados em cada arquivo .ser individual. Os valores armazenados podem ser visualizados utilizando-se a ferramenta db2sqljprint. Novo Parâmetro para o Comando sqlj O comando sqlj possui um novo parâmetro. sqlj - Comando SQLJ Translator do DB2 -db2optimize Especifica que o SQLJ Translator gera um código para uma classe de contexto de conexão que é otimizada para o DB2 Universal Database. Esta opção otimiza o código para o contexto definido pelo usuário, mas não para o contexto padrão. Ao executar o SQLJ Translator com esta opção, o arquivo do driver DB2 Universal JDBC db2jcc.jar deve estar no CLASSPATH para compilar o aplicativo Java gerado. Monitoração e Resolução de Problemas das Atualizações do Comando (db2pd) A Monitoração e Resolução de Problemas do Comando do DB2 (db2pd) recupera informações dos conjuntos de memórias do DB2 UDB. O comando do sistema db2pd foi aprimorado das seguintes maneiras: Novo Parâmetro -hadr Introduzido na Versão 8.2 (equivalente à Versão 8.1 FixPak 7), o parâmetro -hadr relata informações de High Availability Disaster Recovery. As descrições de cada elemento relatado podem ser localizadas na seção High Availability Disaster Recovery do System Monitor Guide and Reference Novo Parâmetro -utilities Introduzido na Versão 8.2 (equivalente à Versão 8.1 FixPak 7), o parâmetro -utilities relata informações de Utility. As descrições de cada elemento relatado podem ser encontradas na seção Utilities do System Monitor Guide and Reference . Novo Parâmetro -activestatements Introduzido na Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9), o parâmetro -activestatements retorna informações sobre as instruções ativas. As seguintes informações são retornadas: AppHandl O manuseio do aplicativo utilizando a instrução ativa, incluindo o nó e o índice. UOW-ID Para o aplicativo associado com AppHandl, a unidade do identificador de trabalho na qual a instrução torna-se ativa. StmtID O identificador da instrução na unidade de trabalho. AnchID O identificador para a âncora hash SQL dinâmica do cache do pacote. StmtUID O identificador para a instrução SQL dinâmica do cache do pacote exclusiva na âncora hash. EffISO O nível de isolamento efetivo da instrução. EffLockTOut O valor de tempo limite de trava efetivo para a instrução. EffDegree O grau efetivo de paralelismo de uma instrução. StartTime O momento em que a instrução foi iniciada. LastRefTime A última vez que a instrução foi referenciada pelo aplicativo. Nova Opção de Espera para o Parâmetro -locks Iniciando com a Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9), é possível especificar a opção aguardar com o parâmetro -locks para retornar apenas travas com um status de espera e travas que estão na espera. Novos Campos Retornados pelo Parâmetro -applications Iniciando na Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9), o parâmetro -applications retorna quatro novos campos: C-AnchID Esse novo campo é o identificador para a âncora hash SQL dinâmica do cache de pacote da instrução atual. O valor para esse campo é 0, se nenhuma instrução atual existir. O identificador da âncora hash atual é populado apenas quando o aplicativo está executando um pedido relacionado à instrução, como um pedido FETCH em um cursor. Uma vez concluído o processamento do pedido, os valores são definidos como 0. O valor também é definido como 0 para as instruções SQL estáticas. C-StmtUID Esse novo campo é o identificador exclusivo da instrução SQL dinâmica do cache de pacote na âncora hash da instrução atual. O valor para esse campo é 0, se nenhuma instrução atual existir. O identificador exclusivo da instrução atual é populado apenas quando o aplicativo está no processo de execução de um pedido relacionado à instrução. Uma vez concluído a execução do pedido, os valores são definidos como 0. O valor também é definido como 0 para as instruções SQL estáticas. L-AnchID Esse novo campo é o identificador da âncora hash SQL dinâmica do cache de pacote da instrução executada por último do aplicativo. O valor para esse campo é 0, se nenhuma instrução executada por último existir, como antes da execução de alguma instrução SQL dinâmica. O valor também é definido como 0 para as instruções SQL estáticas. O último identificador hash de âncora é populado após concluir cada execução de pedido e sobreviver até a conclusão do pedido de associado seguinte. L-StmtUID Esse novo campo é o identificador exclusivo da instrução SQL dinâmica do cache de pacote na âncora hash da instrução executada por último do aplicativo. O valor para esse campo é 0, se nenhuma instrução executada por último existir ou se a instrução executada por último for um SQL estático. O identificador da última instrução é populado após concluir o pedido atual e sobreviver até a conclusão do próximo pedido. Atualizações para o Comando SET CLIENT O comando SET CLIENT especifica as configurações de conexão para o processo de backend. O parâmetro de comando SYNCPOINT para este comando é ignorado a partir da Versão 8. SYNCPOINT continua a ser incluído para compatibilidade reversa. Atualizações para o Comando PRECOMPILE O comando PRECOMPILE processa um arquivo de origem de programa de aplicativo que contém instruções SQL embutidas. Um arquivo de origem modificado é produzido, contendo chamadas de idioma do host para o SQL e, por padrão, um pacote é criado no banco de dados. O parâmetro de comando SYNCPOINT para este comando é ignorado a partir da Versão 8. SYNCPOINT continua a ser incluído para compatibilidade reversa. Atualizações para o Comando UPDATE HISTORY FILE Atualiza a localização, o tipo de dispositivo ou o comentário em uma entrada de arquivo de histórico. O parâmetro de comando STATUS especifica um novo status para uma entrada. A documentação anterior afirma incorretamente que o parâmetro de comando STATUS pode ter um valor de "I" para marcar a entrada como inativa. Os valores válidos são: A Marca a entrada como ativa. E Marca a entrada como expirada. Atualizações para os Comandos EXPORT e IMPORT A subseção "Conexão requerida" completa para os comandos EXPORT e IMPORT é como se segue: Conexão Requerida Banco de Dados. Se a conexão implícita for ativada, uma conexão com o banco de dados padrão será estabelecida. O acesso do utilitário a servidores de bancos de dados do Linux, UNIX, ou Windows de clientes do Linux, UNIX, ou Windows deve ser uma conexão direta através do mecanismo e não através de um gateway ou auto-retorno do DB2 Connect. Atualização para o Comando LOAD As informações completas para o valor AUTOSELECT do parâmetro INDEXING MODE é como se segue: INDEXING MODE AUTOSELECT O utilitário de carregamento decidirá automaticamente entre o modo REBUILD ou INCREMENTAL. A decisão é baseada na quantidade de dados que está sendo carregada e na profundidade da árvore do índice. As informações relacionadas à profundidade da árvore do índice são armazenadas no objeto do índice. RUNSTATS não é requerido para ocupar estas informações. AUTOSELECT é o modo de indexação padrão. Modificadores de Tipo de Arquivo para o Utilitário de Carregamento O comando SET INTEGRITY na descrição para o modificador "generatedoverride" foi atualizado. A descrição para o modificador "usedefaults" também foi atualizada. As atualizações são as seguintes: Tabela 30. Modificadores de Tipo de Arquivo Válidos para Carregamento: Todos os Formatos de Arquivos +-------------------+-------------------------------------------------+ | Modificador | Descrição | +-------------------+-------------------------------------------------+ | generatedoverride | Este modificador instrui o utilitário de | | | carregamento a aceitar dados fornecidos pelo | | | usuário para todas as colunas geradas na tabela | | | (ao contrário das regras normais para esses | | | tipos de colunas). Isso é útil ao migrar dados | | | de outro sistema de banco de dados ou ao | | | carregar uma tabela de dados que foi recuperada | | | utilizando a opção RECOVER DROPPED TABLE no | | | comando ROLLFORWARD DATABASE. Quando este | | | modificador é utilizado, todas as linhas sem | | | dados ou com dados NULL para uma coluna gerada | | | que não pode ser anulada serão rejeitadas | | | (SQL3116W). | | | Nota: Quando este modificador for utilizado, a | | | tabela será colocada no estado CHECK PENDING. | | | Para tirar a tabela do estado CHECK PENDING sem | | | verificar os valores fornecidos pelo usuário, | | | emita o comando a seguir depois da operação de | | | carregamento: | | | SET INTEGRITY FOR < nome_de_tabela > GENERATED | | | COLUMN | | | IMMEDIATE UNCHECKED | | | Para tirar a tabela do estado CHECK PENDING e | | | forçar a verificação dos valores fornecidos | | | pelo usuário, emita o comando a seguir depois | | | da operação de carregamento: | | | SET INTEGRITY FOR < nome_de_tabela > IMMEDIATE | | | CHECKED. | | | | | | Este modificador não pode ser utilizado com o | | | modificador generatedmissing ou | | | generatedignore. | +-------------------+-------------------------------------------------+ | usedefaults | Se uma coluna de origem para uma coluna da | | | tabela de destino tiver sido especificada, mas | | | não contiver dados para uma ou mais instâncias | | | da linha, os valores padrão serão carregados. | | | Exemplos de dados ausentes são: | | | * Para arquivos DEL: dois delimitadores de | | | colunas adjacentes (",,") ou dois delimitadores | | | de colunas adjacentes separados por um número | | | arbitrário de espaços (", ,") são especificados | | | para um valor de coluna. | | | * Para arquivos DEL/ASC/WSF: Uma linha que não | | | tem colunas suficientes ou não é mais | | | suficiente para a especificação original. | | | Nota: Para arquivos ASC, os valores da coluna | | | NULL não são considerados explicitamente | | | ausentes e um padrão não será substituído para | | | os valores de coluna NULL. Os valores da coluna | | | NULL são representados por todos os caracteres | | | de espaço para colunas numéricas, de data, hora | | | e /timestamp ou utilizando o NULL INDICATOR | | | para uma coluna de qualquer tipo para indicar | | | que a coluna é NULL. | | | Sem esta opção, se uma coluna de origem não | | | contiver dados para uma instância de linha, | | | ocorrerá um dos itens a seguir: | | | * Para arquivos DEL/ASC/WSF: Se a coluna for | | | anulável, será carregado NULL. Se a coluna não | | | for anulável, o utilitário rejeitará a linha. | +-------------------+-------------------------------------------------+ Modificadores de Tipo de Arquivo para o Utilitário de Importação A descrição para os modificadores "usedefaults" e "codepage=x" foi atualizada como se segue: Tabela 31. Modificadores de Tipo de Arquivo Válidos para Importação: Todos os Formatos de Arquivos +-------------------+-------------------------------------------------+ | Modificador | Descrição | +-------------------+-------------------------------------------------+ | usedefaults | Se uma coluna de origem para uma coluna da | | | tabela de destino tiver sido especificada, mas | | | não contiver dados para uma ou mais instâncias | | | da linha, os valores padrão serão carregados. | | | Exemplos de dados ausentes são: | | | * Para arquivos DEL: dois delimitadores de | | | colunas adjacentes (",,") ou dois delimitadores | | | de colunas adjacentes separados por um número | | | arbitrário de espaços (", ,") são especificados | | | para um valor de coluna. | | | * Para arquivos DEL/ASC/WSF: Uma linha que não | | | tem colunas suficientes ou não é mais | | | suficiente para a especificação original. | | | Nota: Para arquivos ASC, os valores da coluna | | | NULL não são considerados explicitamente | | | ausentes e um padrão não será substituído para | | | os valores de coluna NULL. Os valores da coluna | | | NULL são representados por todos os caracteres | | | de espaço para colunas numéricas, de data, hora | | | e /timestamp ou utilizando o NULL INDICATOR | | | para uma coluna de qualquer tipo para indicar | | | que a coluna é NULL. | | | Sem esta opção, se uma coluna de origem não | | | contiver dados para uma instância de linha, | | | ocorrerá um dos itens a seguir: | | | * Para arquivos DEL/ASC/WSF: Se a coluna for | | | anulável, será carregado NULL. Se a coluna não | | | for anulável, o utilitário rejeitará a linha. | +-------------------+-------------------------------------------------+ Tabela 32. Modificadores de Tipo de Arquivo Válidos para Importação: Formatos de Arquivos ASCII (ASC/DEL) +-------------------+-------------------------------------------------+ | Modificador | Descrição | +-------------------+-------------------------------------------------+ | codepage=x | x é uma cadeia de caracteres ASCII. O valor é | | | interpretado como a página de códigos dos dados | | | no conjunto de dados de saída. Converte dados | | | de caracteres dessa página de códigos para a | | | página de códigos do aplicativo durante a | | | operação de importação. | | | As seguintes regras se aplicam: | | | * Para DBCS puro (gráfico) DBCS misto e EUC, | | | os delimitadores são restritos ao intervalo de | | | x00 a x3F, inclusive. | | | * nullindchar deve especificar símbolos | | | incluídos no conjunto ASCII padrão entre os | | | pontos de código x20 e x7F, inclusive. Isto se | | | refere a símbolos ASCII e a pontos de código. | | | | | | Notas: | | | 1. O modificador codepage não pode ser | | | utilizado com o modificador lobsinfile. | | | 2. Se a expansão de dados ocorrer quando a | | | página de códigos for convertida da página de | | | códigos do aplicativo para a página de códigos | | | do banco de dados, os dados podem ser truncados | | | e pode ocorrer perda de dados. | +-------------------+-------------------------------------------------+ Comando ATTACH O parâmetro USER do comando ATTACH especifica o identificador de autenticação. Ao conectar a uma instância do DB2 Universal Database em um sistema operacional Windows, o nome do usuário pode ser especificado em um formato compatível com o SAM (Security Account Manager) do Microsoft Windows NT. O qualificador deve ser um nome de estilo do NetBIOS, que possui um comprimento máximo de 15 caracteres. Por exemplo, domainname\username. Comando RECOVER DATABASE Na seção Exemplos da documentação do Comando RECOVER DATABASE para Versão 8.2, os timestamps são incorretamente formatados como aaaa:mm:dd:hh:mm:ss. O formato correto é aaaa-mm-dd-hh.mm.ss Comando UPDATE HISTORY FILE O comando UPDATE HISTORY FILE atualiza o local, tipo de dispositivo, comentário ou status em uma entrada de arquivo de histórico. Sintaxe de Comandos Atualizada >>-UPDATE HISTORY--+-FOR--object-part-+--WITH-------------------> '-EID--eid---------' >--+-LOCATION--new-location--DEVICE TYPE--new-device-type-+---->< +-COMMENT--new-comment---------------------------------+ '-STATUS--new-status-----------------------------------' Parâmetros de Comando Atualizados FOR object-part Especifica o identificador para a entrada do histórico a ser atualizada. É um timestamp com um número de seqüência opcional de 001 a 999. Nota: Não pode ser utilizado para atualizar status de entrada. Para atualizar o status de entrada, especifique então um EID. STATUS new-status Especifica um novo status para uma entrada. Apenas as entradas de backup podem ter seu status atualizado. Valores válidos são: A Ativo. A maioria das entradas estão ativas. I Inativo. As imagens de backup que não estão mais na cadeia de registros ativos se tornam inativas. E Expirado. As imagens de backup que não são mais requeridas, porque existem mais de NUM_DB_BACKUPS imagens ativas são sinalizadas como expiradas. D As imagens de backup que não estão mais disponíveis para recuperação devem ser marcadas como tendo sido excluídas. db2updv8 - Comando Atualizar Banco de Dados para o Nível Atual da Versão 8 Este comando atualiza os catálogos do sistema em um banco de dados para suportar o nível atual das seguintes formas: * Introduz novas rotinas fornecidas com o gerenciador de banco de dados atual * Cataloga os procedimentos de esquema ODBC/CLI/JDBC como procedimentos confiáveis para aprimorar o desempenho e a escalabilidade * Corrige dois erros tipográficos nos parâmetros de retorno da função de tabela SYSPROC.SNAPSHOT_QUIESCERS: * OUIESCER_TBS_ID corrigido para QUIESCER_TBS_ID * OUIESCER_STATE corrigido para QUIESCER_STATE * Corrige descritores de coluna de colunas LOB para que o bit "registrado" seja consistente com as tabelas do catálogo * Cria uma visualização SYSIBM.SYSREVTYPEMAPPINGS * Atualiza as definições de visualização para SYSSTAT.COLUMNS e SYSSTAT.TABLES * Atualiza a coluna SYSCOLDIST.DISTCOUNT para que seja atualizável * Atualiza a coluna SYSINDEXES.TBSPACEID para que os sinalizadores de colunas não sejam definidos * Corrige os comprimentos de parâmetros de 17 funções de tabela. Consulte o tópico Expansão de Colunas para UDFs de Captura Instantânea na seção Atualizações da Documentação | Rotinas SQL Administrativas das Notas sobre o Release da Versão 8.2 para obter uma listagem completa de funções * Ativa as seguintes rotinas internas: * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * HEALTH_TBS_INFO * HEALTH_TBS_HI * HEALTH_TBS_HI_HIS * HEALTH_CONT_INFO * HEALTH_CONT_HI * HEALTH_CONT_HI_HIS * GET_WRAP_CFG_C * LIST_FILES_C * ODBC_DISCOVERY * HEALTH_HI_REC * EXEC_DB2_SCRIPT * HEALTH_HI_REC * EXEC_DB2_SCRIPT * ADMIN_LIST_HIST * GET_DBM_CONFIG * Altera as UDFs de captura instantânea 33 SYSPROC para THREADSAFE: * SNAPSHOT_DBM * SNAPSHOT_FCM * SNAPSHOT_FCMNODE * SNAPSHOT_SWITCHES * SNAPSHOT_APPL_INFO * SNAPSHOT_APPL * SNAPSHOT_STATEMENT * SNAPSHOT_LOCKWAIT * SNAPSHOT_AGENT * SNAPSHOT_SUBSECT * SNAPSHOT_DATABASE * SNAPSHOT_BP * SNAPSHOT_LOCK * SNAPSHOT_TABLE * SNAPSHOT_DYN_SQL * SNAPSHOT_TBS * SNAPSHOT_TBS_CFG * SNAPSHOT_QUIESCERS * SNAPSHOT_CONTAINER * SNAPSHOT_RANGES * SNAPSHOT_TBREORG * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * HEALTH_TBS_INFO * HEALTH_TBS_HI * HEALTH_TBS_HI_HIS * HEALTH_CONT_INFO * HEALTH_CONT_HI * HEALTH_CONT_HI_HIS * Altera os comprimentos de parâmetros das seguintes funções: * SQLCACHE_SNAPSHOT * SNAPSHOT_APPL_INFO * SNAPSHOT_STATEMENT * SNAPSHOT_LOCKWAIT * SNAPSHOT_DATABASE * SNAPSHOT_BP * SNAPSHOT_LOCK * SNAPSHOT_TABLE * SNAPSHOT_TBREORG * SNAPSHOT_SUBSECT * SNAPSHOT_DYN_SQL * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * DB_PARTITIONS * GROUPS_FOR_USER * DB_PARTITION * Altera as seguintes funções para utilizarem o esquema db2schema em vez do db2schem obsoleto e permite que modifiquem dados SQL: * SQLTABLES * SQLTABLEPRIVILEGES * SQLSTATISTICS * SQLSPECIALCOLUMNS * SQLPROCEDURES * SQLPROCEDURECOLS * SQLPRIMARYKEYS * SQLFOREIGNKEYS * SQLCOLUMNS * SQLCOLPRIVILEGES * Altera as seguintes funções para utilizarem o esquema db2schema em vez do db2schem obsoleto: * SQLUDTS * SQLGETTYPEINFO Autorização sysadm Conexão Requerida Banco de Dados. Esse comando estabelece automaticamente uma conexão ao banco de dados especificado. Sintaxe do comando >>-db2updv8-- -d--database-name---------------------------------> >--+----------------------------+--+-----+--------------------->< '- -u--userid-- -p--password-' '- -h-' Parâmetros de Comando -d database-name Especifica o nome do banco de dados a ser atualizado. -u userid Especifica o ID do usuário. -p password Especifica a senha para o usuário. -h Exibe informação de ajuda. Quando esta opção é especificada, todas as outras opções são ignoradas e, somente as informações de auxílio são exibidas. Exemplo Depois de instalar o nível atual (um FixPak ou uma nova versão), atualize o catálogo do sistema no banco de dados de amostra, emitindo o seguinte comando: db2updv8 -d sample Notas de Uso 1. Este comando pode ser utilizado apenas em um banco de dados que está executando o DB2 Universal Database Versão 8.1.2 ou posterior. Se o comando for emitido mais de uma vez, nenhum erro será reportado e cada atualização do catálogo será aplicada somente uma vez. 2. Para ativar as novas funções internas, todos os aplicativos devem ser desconectados do banco de dados e o banco de dados deve ser desativado se tiver sido ativado. Formatando Arquivos de Interrupção (Windows) Uma nova ferramenta, db2xprt.exe, está disponível para permitir a formatação de arquivos de interrupção (*.TRP). Essa ferramenta formata arquivos de interrupção binários do DB2 Universal Database em um arquivo ASCII legível convencionalmente. Os arquivos de interrupção estão localizados no diretório da instância (DB2INSTPROF), por padrão, ou no caminho do diretório de dados de diagnóstico se o parâmetro de configuração do gerenciador do banco de dados DIAGPATH estiver definido. Autorização Você deve ter acesso ao diretório DIAGPATH. Sintaxe do comando >>-db2xprt--+----------+--+----+--+----+--infile--+---------+-->< +-/p--path-+ '-/m-' '-/n-' '-outfile-' '-/v-------' Parâmetros de Comando /p path Um caminho separado por ponto e vírgula (;) que aponta para o local ou locais em que os arquivos binários e os arquivos PDB estão localizados. /v Exibe informações de versão. /m Formata um dump de memória junto com o restante do arquivo de interrupção. /n Formata dados sem considerar as informações de número de linhas. infile Especifica o arquivo de entrada. outfile Especifica o arquivo de saída. Movimentação de Dados Arquivos de Ligação Utilizados pelos Utilitários de Exportação, Importação e Carregamento O novo arquivo de ligação, denominado db2uImpInsUpdate.bnd, foi incluído para o utilitário de importação com um nível de isolamento padrão de RS (Read Stability). Esse arquivo de ligação é utilizado pelo Utilitário de Importação apenas durante INSERT_UPDATE. As opções INSERT, REPLACE e CREATE do utilitário de importação ainda utilizam o arquivo db2uimpm.bnd. O arquivo de ligação db2uImpInsUpdate.bnd não pode ser ligado à opção INSERT BUF. A tentativa de executar IMPORT INSERT_UPDATE enquanto db2uImpInsUpdate.bnd é ligado à INSERT BUF causa a falha do utilitário de importação, resultando no seguinte erro: SQL3525: A opção "INSERT_UPDATE" é imcompatível com a opção "INSERT BUF BIND ON DB2UIMPINSUPDATE.BND". Utilizando a Importação com Inserções em Buffer A Versão 8.2 de Data Movement Utilities Guide and Reference afirma: O recurso de inserção em buffer não pode ser utilizado em conjunto com as operações de importação nas quais o parâmetro INSERT_UPDATE é especificado. Um novo arquivo de ligação (db2uimpm2.bnd) é introduzido para reforçar essa restrição. Devido à introdução de um novo arquivo de ligação, a instrução deve ser: O recurso de inserção em buffer não pode ser utilizado em conjunto com as operações de importação nas quais o parâmetro INSERT_UPDATE é especificado. Um novo arquivo de ligação (db2uImpInsUpdate.bnd) é introduzido para reforçar essa restrição. As Informações do Índice São Perdidas Quando o Utilitário de Importação É Utilizado Você pode usar o utilitário de importação para recriar uma tabela que foi salva através do utilitário de exportação. O tópico "Using import to recreate an exported table" da publicação Data Movement esboça atributos da tabela original não retidos. Além dos atributos que já foram documentados, os atributos a seguir não são retidos: * Informações do índice: * Incluir colunas (se houver) * Nome do índice, se o índice for um índice de chave primária * Ordem descendente, se o índice for um índice de chave primária (Crescente é o padrão) Recuperação de Dados e High Availability Visão Geral de Backup Observe as restrições a seguir: * A inicialização de uma operação de backup on-line de um espaço de tabela DMS é permitida quando uma tabela dentro do mesmo espaço de tabela está sendo reorganizada on-line. Onde provavelmente pode haver bloqueios pendentes da operação de reorganização durante a fase de truncamento. * A inicialização de uma operação de backup on-line de um espaço de tabela SMS não é permitida quando uma tabela dentro do mesmo espaço de tabela está sendo reorganizada on-line. Ambas as operações requerem um bloqueio exclusivo. Utilizando Backup As seguintes restrições se aplicam ao utilitário de backup: * Uma operação de backup do espaço de tabelas e uma operação de restauração do espaço de tabela não podem ser executadas ao mesmo tempo, mesmo que espaços de tabelas diferentes estejam envolvidos. * Se deseja estar capacitado a realizar recuperação rollforward em um ambiente de banco de dados particionado, você deve fazer o backup regularmente do banco de dados na lista de nós e deve ter, pelo menos, uma imagem de backup dos outros nós do sistema (mesmo daqueles que não contenham dados de usuário para o banco de dados). Duas situações solicitam a imagem de backup de uma partição de banco de dados no servidor da partição de banco de dados que não contém dados de usuário para o banco de dados: * O servidor da partição de banco de dados foi incluído no sistema de banco de dados após a realização do último backup e foi necessário realizar recuperações avançadas nesse servidor da partição de banco de dados. * É utilizada recuperação point-in-time, a qual requer que todas as partições de banco de dados no sistema estejam em estado de pendência rollforward. * Operações de backup on-line para espaços de tabela DMS são incompatíveis com as operações a seguir: * carregar * Reorganização (apenas off-line); (a reorganização on-line de uma tabela no espaço de tabelas que estão em backup pode ser utilizada, porém pode haver bloqueios pendentes durante a fase de truncamento da operação de reorganização). * área de tabelas de queda * truncamento da tabela * criação de índice * não registrado em log inicialmente (utilizado com as instruções CREATE TABLE e ALTER TABLE) Visão Geral da High Availability Disaster Recovery Ao executar os comandos START HADR, STOP HADR ou TAKEOVER HADR, os códigos de erro correspondentes podem ser gerados: SQL01767N, SQL01769N ou SQL01770N com um código de razão de 98. O código de razão indica que não há licença instalada para o HADR no servidor em que o comando foi executado. Para corrigir o problema, instale uma licença de HADR válida utilizando db2licm ou instale uma versão do servidor que contém uma licença de HADR válida como parte de sua distribuição. Suporte a Backup e Restauração de Plataforma Cruzada O DB2 UDB (Universal Database) suporta operações de backup e restauração de plataforma cruzada. É possível restaurar os bancos de dados criados em uma plataforma DB2 UDB Versão 8 32 bits Windows para uma plataforma DB2 UDB Versão 8 64 bits Windows ou o contrário. É possível restaurar bancos de dados criados em uma plataforma DB2 UDB Versão 8 32 bits Linux x86 para uma plataforma DB2 UDB Versão 8 64 bits Linux x86-64 ou IA64 ou o contrário. É possível restaurar bancos de dados criados em plataformas AIX, HP-UX, Linux PPC, Linux zSeries ou Solaris Operating Environment do DB2 UDB Versão 8, em 32 ou em 64 bits, para plataformas AIX, HP-UX, Linux PPC, Linux zSeries ou Solaris Operating Environment do DB2 UDB Versão 8 (32 ou 64 bits). Fazendo Backup para Fita (Linux) O limite máximo de tamanho de bloco para dispositivos de fita 3480 e 3490 no Linux é 61 440 bytes Tabela 33. Limite Máximo de Tamanho de Bloco para Dispositivos de Fita 3480 e 3490 no Linux +-----------------+-----------------+----------------+----------------+ | Dispositivo | Conexão | Limite de | Limite do | | | | Tamanho de | Tamanho de | | | | Bloco | Buffer do DB2 | | | | | (em páginas de | | | | | 4 KB) | +-----------------+-----------------+----------------+----------------+ | 3480 | s370 | 61 440 | 15 | +-----------------+-----------------+----------------+----------------+ | 3490 | s370 | 61 440 | 15 | +-----------------+-----------------+----------------+----------------+ Tivoli Storage Manager Ao chamar os comandos BACKUP DATABASE ou RESTORE DATABASE, você pode especificar se deseja utilizar o produto TSM (Tivoli Storage Manager) para gerenciar operação de backup ou restauração de banco de dados ou do espaço de tabelas. O nível mínimo requerido da API do cliente TSM é a Versão 4.2.0, exceto no seguinte: * Sistemas Solaris de 64 bits, que requerem a API do cliente TSM Versão 4.2.1. * Sistemas Operacionais Windows NT de 64 bits que requerem a API de cliente do TSM Versão 5.1. * Linux para iSeries e pSeries de 32 bits que requer no mínimo a API de cliente do TSM Versão 5.1.5 * Linux para iSeries e pSeries de 64 bits que requer no mínimo a API de cliente do TSM Versão 5.3 * Sistemas Linux no AMD Opteron de 64 bits que requerem no mínimo a API de cliente do TSM Versão 5.2.0. * Linux para zSeries de 64 bits que requer no mínimo a API de cliente do TSM Versão 5.2.2. Restrições de Valores para os Parâmetros de Host Local e de Serviço Local do HADR Quando especificar valores para os parâmetros de host local e de serviço local do HADR (High Availability Disaster Recovery) (HADR_LOCAL_SVC e HADR_REMOTE_SVC) durante a preparação de um comando update database configuration, os valores devem ser portas que não estão sendo utilizadas por nenhum outro serviço. Se os parâmetros estiverem sendo configurados utilizando a linha de comandos do Linux ou UNIX, os valores deverão também ser definidos no arquivo /etc/services. Requisitos de Sistema Adicionais para High Availability Disaster Recovery Se você criar um espaço de tabelas no banco de dados principal e a reprodução de registro falhar no banco de dados de espera porque os contêineres não estão disponíveis, o banco de dados principal não receberá uma mensagem de erro indicando que a reprodução de registro falhou. Para verificar erros de reprodução de registro, é necessário monitorar o db2diag.log e o registro de administração no banco de dados de espera quando estiver criando novos espaços de tabelas. Se ocorrer uma operação de tomada de controle, o novo espaço de tabelas criado não estará disponível no novo banco de dados principal. Para recuperar-se desta situação, restaure o espaço de tabelas no novo banco de dados principal a partir de uma imagem de backup. No exemplo a seguir, o espaço de tabelas MY_TABLESPACE é restaurado no banco de dados MY_DATABASE antes de ser utilizado como o novo banco de dados principal: 1. db2 connect to my_database 2. db2 list tablespaces show detail Nota: Execute o comando db2 list tablespaces show detail para mostrar o status de todos os espaços de tabelas e obter o número do ID do espaço de tabelas requerido para a Etapa 5. 3. db2 stop hadr on database my_database 4. db2 "restore database my_database tablespace (my_tablespace) online redirect" 5. db2 "set tablespace containers for my_tablespace_ID_# ignore rollforward container operations using (path '/my_new_container_path/')" 6. db2 "restore database my_database continue" 7. db2 rollforward database my_database to end of logs and stop tablespace "(my_tablespace)" 8. db2 start hadr on database my_database as primary Operações Não-replicadas para Recuperação de Dados e High Availability A documentação da Versão 8.2 afirma: BLOBs e CLOBs não são replicados; no entanto, o espaço para eles será alocado no banco de dados de espera. A afirmação deve ser lida da seguinte forma: BLOBs e CLOBs não registrados não são replicados; no entanto, o espaço para eles será alocado no banco de dados de espera. O HADR Não Suporta Registros Brutos O HADR (High Availability Disaster Recovery) não suporta a utilização de E/S brutas (acesso direto ao disco) para arquivos de registro do banco de dados. Se o HADR for iniciado com o comando START HADR ou se o banco de dados for reiniciado com o HADR configurado e forem detectados registros brutos, o comando associado falhará com o código de razão SQL1768N "9". Comparação entre o Monitor de Falhas e o Monitor de Funcionamento O monitor de funcionamento e o monitor de falhas são ferramentas que funcionam em uma única instância de banco de dados. O monitor de funcionamento utiliza indicadores de funcionamento para avaliar o funcionamento de aspectos específicos de desempenho do gerenciador de banco de dados ou de desempenho do banco de dados. Um indicador de funcionamento avalia o funcionamento de algum aspecto de uma classe específica de objetos de banco de dados, como um espaço de tabelas. Os indicadores de funcionamento podem ser avaliados em critérios específicos para determinar o funcionamento dessa classe de objeto de banco de dados. Além disso, os indicadores de funcionamento podem gerar alertas para notificá-lo quando um indicador exceder um limite ou indicar que um objeto de banco de dados está em um estado anormal Por comparação, o monitor de falhas é responsável apenas por manter a instância que ele está monitorando ativa e em execução. Se a instância do DB2 UDB que ele está monitorando for encerrada inesperadamente, o monitor de falhas reiniciará a instância. O monitor de falhas não está disponível no Windows. Desativando o Monitoramento de Falhas Para desativar o monitoramento de falhas para a instância de banco de dados DB2INST1, digite o seguinte comando a partir de uma janela de comandos do DB2 UDB: db2fm -i db2inst1 -f no Nota: Se o arquivo de registro do monitor de falhas não existir, serão utilizados os valores padrão. Para confirmar se um monitor de falhas não está mais em execução para DB2INST1, digite o seguinte comando em sistemas UNIX: ps -ef|grep -i fm Em sistemas Linux, digite o seguinte comando: ps auxw|grep -i fm Uma entrada que mostra db2fmd e DB2INST1 indica que o monitor de falhas ainda está em execução nessa instância. Para desativar o monitor de falhas, digite o seguinte comando como o proprietário da instância: db2fm -i db2inst1 -D Data Warehouse Center Configurando o Ambiente do Cliente de Warehouse em Sistemas Operacionais AIX e Solaris Em sistemas operacionais AIX e Solaris, é necessário configurar seu código do idioma corretamente antes de executar o cliente de warehouse. Para configurar seu código do idioma, digite o seguinte comando a partir de uma linha de comandos: export LC_ALL= Observe o seguinte exemplo: export LC_ALL=Ja_JP em que Ja_JP é seu código do idioma local. Se esta variável de ambiente não estiver configurada, os aplicativos da GUI não poderão ser executados corretamente e isso poderá resultar em erros de Java. Atualizando a Configuração do Gerenciador do Banco de Dados Antes de Instalar Transformadores de Warehouse No Guia de Instalação do DB2 Warehouse Manager Standard Edition, Versão 8.2, o tópico "Atualizando a Configuração do Gerenciador de Banco de Dados Antes da Instalação dos Transformadores Warehouse" instrui você incorretamente a atualizar o parâmetro de caminho do SDK. É necessário atualizar o parâmetro de caminho do JDK. Utilize o Processador da Linha de Comandos do DB2 para atualizar a configuração do gerenciador de banco de dados para a instância de destino do DB2 antes de instalar os transformadores de warehouse. Procedimento Para atualizar a configuração do gerenciador de banco de dados antes de instalar os transformadores de warehouse: 1. Configure o parâmetro de caminho do JDK (JDK_PATH) para o subdiretório em que o JDK está instalado: UPDATE DATABASE MANAGER CONFIGURATION USING JDK_PATH path em que path é o subdiretório no qual o JDK está instalado. Nota: Não inclua o diretório bin em JDK_path. Se estiver utilizando um DB2 Universal Database Versão 7.2 (ou anterior) de destino que tenha transformadores instalados, será necessário atualizar JDK11_PATH em vez de JDK_PATH. 2. Defina o parâmetro de tamanho da pilha da Máquina Virtual Java (JAVA_HEAP_SZ) para 4096: UPDATE DATABASE MANAGER CONFIGURATION USING JAVA_HEAP_SZ 4096 Variável de Ambiente VW_NETRC Incluída ao Data Warehouse Center (UNIX) Iniciando com a Versão 8.2 FixPak 10 (equivalente à Versão 8.1 FixPak 3) do Data Warehouse Center, você pode configurar a variável de ambiente VW_NETRC em sistemas operacionais UNIX, exceto em Linux. A configuração da variável de ambiente VW_NETRC como off, permite que você faça a manutenção do arquivo .netrc manualmente. Consulte a documentação do seu sistema operacional para obter informações sobre o formato correto do arquivo .netrc. A execução concorrente de programas definidos pelo usuário no FTP, provavelmente corromperá o arquivo .netrc. Se desejar executar etapas do programa definido pelo usuário no FTP concorrentes, você pode configurar a variável de ambiente VW_NETRC como off (VW_NETRC=OFF). Inclua esta variável de ambiente no seu perfil daemon de agente para agentes remotos e para o arquivo IWH.environment de seu agente padrão ou local. DB2 Data Warehouse Center Requer Banco de Dados no Formato Unicode Após instalar o DB2 Universal Database Versão 8.1 FixPak 7 ou posterior, será necessário executar a ferramenta Control Database Management para criar um novo banco de dados de controle de warehouse neste formato Unicode. Pré-requisitos Para criar e armazenar uma cópia do banco de dados de controle de warehouse existente, sua estação de trabalho deve ter espaço em disco suficiente para armazenar essa cópia, além de possuir o dobro desse espaço para armazenar arquivos temporários. Por exemplo, se o banco de dados de controle de warehouse existente possuir 10 MB, deve haver um total de 30 MB disponível na mesma instância como o banco de dados de controle de warehouse existente. Procedimento Siga estas etapas para criar um novo banco de dados de controle do warehouse no formato Unicode: 1. Execute a ferramenta Warehouse Control Database Management: * No Windows: Clique em Iniciar e selecione Programas -> IBM DB2-> Ferramentas de Configuração-> Warehouse Control Database Management. * No AIX: Execute o script db2wcdbm. 2. Digite o nome do banco de dados de controle de warehouse existente. Em seguida será solicitado que você digite um novo nome de banco de dados de controle de warehouse. Isto criará um novo banco de dados de controle de warehouse em Unicode. Definindo Origens e Destinos do Warehouse do DB2 A atualização a seguir afeta dois tópicos do Data Warehouse Center: * Definindo origens do warehouse do DB2 * Definindo um destino do warehouse Por padrão, quando você define uma origem ou um destino do warehouse, o número de tabelas retornado é 250. Porém, é possível utilizar a nova variável de ambiente VWS_MAX_TABLELIST para definir o número de tabelas retornado. O número máximo de tabelas que pode ser retornado é 40 000. Este número pode ser menor dependendo do tamanho dos nomes de tabela na lista. Recomenda-se que seja especificado um número muito menor que 40 000. Atualizações no Tutorial do Business Intelligence Verificando se os Bancos de Dados DWCTBC e TBC_MD estão Registrados com o ODBC Na Versão 8, o banco de dados de controle TBC_MD que é utilizado no tutorial, não precisa ser um sistema de origem de dados ODBC. Entretanto, o banco de dados de destino ou banco de dados de origem DWCTBC deve ser um sistema de origem de dados ODBC. Abrindo o Bloco de Notas Definir Origem do Warehouse O procedimento para abrir o bloco de notas Definir Origem do Warehouse para a Origem Relacional do Tutorial foi alterado. Procedimento Para abrir o bloco de notas Definir Origem do Warehouse para a Origem Relacional do Tutorial: 1. Na janela Data Warehouse Center, clique com o botão direito na pasta Origens do Warehouse. 2. Clique em Definir --> ODBC --> DB2 --> Família DB2. O bloco de notas Definir Origem do Warehouse é aberto. Abrindo o Bloco de Notas Definir Destino do Warehouse O procedimento para abrir o bloco de notas Definir Destino do Warehouse foi alterado. Procedimento Para abrir o bloco de notas Definir Destino do Warehouse: 1. Na janela Data Warehouse Center, clique com o botão direito na pasta Destinos do Warehouse. 2. Clique em Definir --> ODBC --> DB2 --> Família DB2. O bloco de notas Definir Destino do Warehouse é aberto. Definindo o Limite de Limpeza para Arquivos de Registro do Warehouse O arquivo de registro armazena os registros até que se atinja um limite designado. O limite padrão é de 1000 registros. Normalmente, cada job que você executa cria de 12 a 15 registros de log. Defina o limite de limpeza que for conveniente para você atualizando o campo Limpar Registro Quando o Total de Registros For Igual na Guia Servidor da página Propriedades do Warehouse. Suporte do Data Warehouse Center para Carregamento do CURSOR A etapa Carregamento do DB2 Universal Database, agora, permite que uma visualização ou uma tabela seja utilizada como a origem para a etapa, resultando em um LOAD FROM CURSOR. Para mapear colunas no assistente para carregamento do CURSOR, o botão de opções Mapear Colunas com Base nas Posições de Colunas Localizadas no Arquivo de Entrada deve ser selecionado. Migração e Limitações de Bancos de Dados de Controle do Warehouse Unicode A partir da Versão 8.2 do Data Warehouse Center, o banco de dados de controle de warehouse deve ser um banco de dados Unicode. Se você tiver um banco de dados de controle do warehouse Unicode de uma versão do Data Warehouse Center que seja anterior à Versão 8.2, ainda deverá criar um novo banco de dados de controle Unicode utilizando a ferramenta Gerenciamento de Bancos de Dados de Controle do Warehouse. Quando migrar um banco de dados de controle do warehouse de uma versão do Data Warehouse Center que seja anterior à Versão 8.2, a ferramenta Gerenciamento de Bancos de Dados de Controle do Data Warehouse Center executará o comando db2move para mover os dados para um novo banco de dados de controle Unicode. Durante este processo, aparecem janelas que mostram o progresso do comando db2move. Este caminho de migração ocorre apenas uma vez. O Data Warehouse Center não suporta Unicode em servidores Sybase. Alteração no Formato de Data para Coluna Modificada Na visualização de detalhes da janela principal do Data Warehouse Center, o formato da data na coluna Modificada foi atualizado. A data na coluna Modificada é exibida no formato do seu código do idioma e inclui a hora. Esta alteração no formato de data assegura que os objetos de classificação na coluna Modificada funcionam corretamente. Esta atualização se aplica à maioria das listas de objetos do Data Warehouse Center que são mostrados nas visualizações Navegador e Detalhes, tais como: * Assuntos * Processos * Esquemas de Warehouse * Site do Agente de Warehouse * Programas * Etapas * Recursos de Dados * Usuários * Grupos de Usuários Definindo Transformadores Estatísticos no Data Warehouse Center Para executar uma transformação estatística de seus dados, defina o transformador estatístico que deseja utilizar. Procedimento Para definir transformadores estatísticos: 1. Abra a janela Modelo do Processo. 2. Clique no ícone do transformador e selecione um transformador da lista de transformadores disponíveis. 3. Vincule o transformador selecionado a uma origem do warehouse e a um destino do warehouse, conforme requerido pelas regras para esse transformador. Cada transformador possui regras específicas de como ele deve ser vinculado a uma origem e a um destino do warehouse. Consulte a documentação para cada transformador para obter informações adicionais. Preparando a Instalação de Agentes do Warehouse Quando instalar o DB2 Warehouse Manager, o servidor de warehouse, o cliente de warehouse e todos os agentes de warehouse deverão estar na mesma versão e nível de fix pack. Pré-requisito para o Agente de Warehouse do iSeries Para utilizar um agente de warehouse do iSeries para o DB2 Warehouse Manager em sistemas V5R2 e V5R3, o seguinte PTF é requerido: PTF SI13558 Este PTF de banco de dados permite que a CLI no iSeries manipule dados Unicode. DB2 .NET Data Provider Suporte à Leitora de Dados Ativos Simultâneos O DB2 .NET Data Provider suporta agora a utilização das leitoras de dados ativos simultâneos. Isso significa que é possível acessar dados simultaneamente de várias instâncias DB2DataReader que utilizam a mesma instância DB2Connection. Cada instância DB2DataReader deve ser associada à sua própria instância DB2Command. Para utilizar a instância DB2Command associada para qualquer outra finalidade, é necessário chamar explicitamente o método DB2DataReader.Close. Propriedade DB2Connection.ConnectionString Existe uma palavra-chave adicional para a propriedade DB2Connection.ConnectionString: CurrentSchema O esquema a ser utilizado após uma conexão bem-sucedida. Em uma conexão bem-sucedida, uma instrução SET CURRENT SCHEMA é enviada ao servidor DB2. Isto permite que o aplicativo nomeie objetos SQL sem ter que qualificá-los por um nome de esquema. DB2 Connect Alterar para a Negociação de Tipo de Autenticação Através de um Gateway Iniciando com o DB2 Connect(TM) Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9), o gateway não é mais um participante passivo durante a negociação de autenticação. Em vez disso, o gateway leva uma função ativa. O tipo de autenticação especificado na entrada de diretório do banco de dados no gateway substitui o tipo e autenticação catalogado no cliente. O cliente, o gateway e o servidor devem todos especificar os tipos compatíveis. Se o tipo de autenticação catalogado no gateway não foi especificado na entrada de diretório do banco de dados, a autenticação SERVER será o tipo padrão solicitado do servidor. No entanto, a negociação ainda ocorrerá entre o cliente e o servidor, se o servidor não suportar a autenticação SERVER. Esse comportamento contrasta com o cliente padronizado para SERVER_ENCRYPT, se um tipo de autenticação não foi especificado. O tipo de autenticação catalogado no gateway não é utilizado se a opção DB2NODE ou SQL_CONNECT_NODE de Definir a API do Cliente foi definida no cliente. Nesses casos, a negociação ainda é estritamente entre o cliente e o servidor. Um servidor com SERVER_ENCRYPT especificado como o tipo de autenticação na configuração do gerenciador de banco de dados não aceita mais conexões ou anexos de clientes que solicitam a autenticação SERVER. Novo Cenário de Segurança Um novo cenário de segurança foi incluído para conexões APPC: Autenticação GSSPLUGIN Segurança Nenhum Validação Mecanismo de Plug-in de Segurança da GSS API Correções em Diagramas Os seguintes tópicos do DB2 Connect Enterprise Edition têm diagramas que estão incorretos: * Acessando Dados do DB2 do Host ou do iSeries Utilizando o DB2 Connect Enterprise Edition * Acessando dados do DB2 a partir da Web utilizando Java A tabela a seguir esboça correções para diagramas no tópico "Acessando Dados do DB2 do Host ou do iSeries Utilizando o DB2 Connect Enterprise Edition". Tabela 34. Correções para Diagramas no Tópico "Acessando Dados do DB2 do Host ou do iSeries Utilizando o DB2 Connect Enterprise Edition" +-------------------+-------------------------------------------------+ | Local no Tópico | Correção | +-------------------+-------------------------------------------------+ | Legenda para | * As referências ao "DB2 para OS/390 V5R1" | | todos os quatro | devem ser "DB2 para OS/390 V6 ou posterior". | | diagramas | * As referências ao "DB2 para AS/400 V4R2" | | | devem ser "DB2 para iSeries V5R1 ou posterior". | +-------------------+-------------------------------------------------+ | Primeiro diagrama | Todas as referências a "APPC" e "SNA | | (Figura 1: DB2 | Communications Support" estão incorretas. O | | Connect | SNA/APPC não é suportado como um protocolo de | | Enterprise | entrada para o DB2 Runtime Client por | | Edition) | servidores DB2 Linux, Unix e Windows, incluindo | | | o DB2 Connect Enterprise Edition. | +-------------------+-------------------------------------------------+ A tabela a seguir esboça correções para diagramas no tópico "Acessando dados do DB2 a partir da Web utilizando Java". Tabela 35. Correções para Diagramas no Tópico "Acessando Dados do DB2 a partir da Web Utilizando Java" +-------------------+-------------------------------------------------+ | Local no Tópico | Correção | +-------------------+-------------------------------------------------+ | Legenda | * As referências ao "DB2 para OS/390 V5R1" | | | devem ser "DB2 para OS/390 V6 ou posterior". | | | * As referências ao "DB2 para AS/400 V4R2" | | | devem ser "DB2 para iSeries V5R1 ou posterior". | +-------------------+-------------------------------------------------+ Development Center DB2 Development Center Versão 8.2 Requer Nível 9.2.9 do Distributed Debugger O DB2 Development Center Versão 8.2 agora requer a Versão 9.2.9 do IBM Distributed Debugger. Se você não possuir a Versão 9.2.9 do Distributed Debugger instalada, não é possível depurar os procedimentos armazenados Java utilizando o Development Center. A Versão 9.2.9 do Distributed Debugger não suporta mais os Solaris Operating Environments. Para obter informações adicionais sobre o Distributed Debugger, visite o Web site do Distributed Debugger em http://www.ibm.com/software/awdtools/debugger. Restrição de Comprimento da Janela Alterar Intervalo de Variáveis do DB2 Development Center Ao alterar o comprimento de uma variável utilizando o diálogo Alterar Intervalo de Variáveis no DB2 Development Center, há um comprimento máximo de 1024 bytes. Essa limitação é documentada atualmente em uma mensagem apenas em inglês. Restrições aos Drivers Tipo 2 e Tipo 4 do DB2 Universal Na Versão 8.2, o suporte foi incluído para permitir que os usuários se conectem a um banco de dados DB2 UDB (Universal Database) de dentro do Development Center utilizando os drivers Tipo 2 e Tipo 4 do DB2 Universal. Porém, se tentar utilizar um desses drivers para se conectar a um servidor iSeries ou a um servidor DB2 UDB que seja da Versão 8.1 ou anterior, você verá a seguinte mensagem de erro: A conexão com o falhou. Driver IBM DB2 Universal (JCC) não encontrado. Consulte o tópico denominado "Drivers JDBC" no DB2 Information Center para obter informações adicionais sobre quais drivers utilizar para evitar este erro. Ferramentas da GUI Modificando o Caractere de Término de Instrução A partir do DB2 UDB (Universal Database) Versão 8.2 FixPak 1 (equivalente à Versão 8.1 FixPak 8), é possível modificar o caractere de término de instrução dentro de um script que está sendo executado no CLP (Command Line Processor) ou no Command Editor. Essa modificação em movimento é semelhante ao método atualmente disponível no DB2 UDB para OS/390. O exemplo a seguir mostra como o caractere de término pode ser alterado depois de cada instrução: connect to gilroy user newton using password; select * from newton.department; --#SET TERMINATOR : select * from newton.employee: --#SET TERMINATOR @ select * from newton.department@ --#SET TERMINATOR ; select * from newton.department; --#SET TERMINATOR & terminate& A capacidade de alterar o caractere de término é importante quando um script contém instruções compostas. No exemplo a seguir, o DB2 UDB assume que o primeiro ; que encontra na instrução CREATE TRIGGER composta é o caractere de término para a instrução CREATE TRIGGER inteira. Porém, este não é o caso. Ele deve ser apenas o caractere de término para uma das instruções dentro da instrução CREATE TRIGGER composta. CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END; CONNECT RESET; TERMINATE; O exemplo a seguir mostra como o caractere de término de instrução pode ser modificado dentro do script para atingir os resultados desejados. CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; --#SET TERMINATOR @ CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END@ --#SET TERMINATOR ; CONNECT RESET; Se você não precisa que seus scripts sejam executados localmente no DB2 para OS/390 ou se seus scripts do DB2 UDB não se conectarem ao OS/390, então, utilizar --#SET TERMINATOR não é o método recomendado para modificar os caracteres de término de instrução. Em vez disso, você deve utilizar as opções -tdX ou ;-- existentes. A opção -tdX permite especificar o caractere de término ao chamar um script utilizando um comando CLP. O 'X' representa o caractere que está sendo utilizado como o caractere de término de instrução. Por exemplo, no comando: db2 -tvf test.txt -td& O & será utilizado como o caractere de término de instrução ao executar o script no arquivo test.txt. Se esse script contivesse a instrução CREATE TRIGGER composta, ele seria escrito como a seguir: CONNECT TO SAMPLE& DROP TRIGGER newton.NWTTRIGGER& CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END& CONNECT RESET& TERMINATE& Nota: A opção -tdX não está disponível no Command Editor. O script que contém a instrução CREATE TRIGGER composta pode também ser reescrita utilizando a opção ;-- como se segue: CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0');-- insert into newton.nwttable values( -1, '-1');-- END; CONNECT RESET; TERMINATE; Status Não Disponível do Banco de Dados na Área de Janela Detalhes do Banco de Dados do Centro de Controle Você pode utilizar a área de janela detalhes do Centro de Controle para visualizar informações sobre seus bancos de dados. A seleção de um banco de dados na árvore de objetos ou na área de janela de conteúdo exibe um resumo de seu estado. Em algumas situações, as informações do banco de dados podem não estar disponíveis. Algumas razões para esta indisponibilidade estão descritas na tabela a seguir. Tabela 36. Razões para um Status Indisponível do Banco de Dados +--------------------+------------------------------------------------+ | Elemento de Status | Possíveis Razões para Status Não Disponível | | do Banco de Dados | | +--------------------+------------------------------------------------+ | Último Backup | * Não foram executados backups para o banco | | | de dados. | | | * O usuário não possui a autoridade requerida | | | para acessar estas informações. | +--------------------+------------------------------------------------+ | Tamanho | * O banco de dados está na pré-versão 8.2. | | | * O usuário não possui a autoridade requerida | | | para acessar estas informações. | +--------------------+------------------------------------------------+ | Capacidade | * O banco de dados está na pré-versão 8.2. | | | * O banco de dados possui várias partições. | | | * O usuário não possui a autoridade requerida | | | para acessar estas informações. | +--------------------+------------------------------------------------+ | Funcionamento | * O monitor de funcionamento não está | | | ativado. | | | * Retardo de sincronização. Existe um retardo | | | de aproximadamente 5 minutos do tempo em que | | | um banco de dados é ativado até seu status de | | | funcionamento ficar disponível. | +--------------------+------------------------------------------------+ | Manutenção | * O banco de dados está na pré-versão 8.2. | +--------------------+------------------------------------------------+ Gravação Padrão na Geração de Saída de Tabela (Criar Monitor de Eventos) Foi incluído um botão Gerar no diálogo Opções de saída, que é ativado a partir da janela Criar Monitor de Eventos. Clicar no botão Gerar gera a opção padrão gravar na saída da tabela. Esta saída é equivalente à sintaxe gerada pelo comando db2evtbl. A opção gerada mostra o usuário cujas tabelas e elementos de dados serão incluídos durante a criação do monitor de eventos. Os usuários podem modificar o comando de acordo com suas necessidades. A sintaxe gerada é baseada no nome do monitor de eventos e nos tipos de eventos especificados na janela Criar Monitor de Eventos. Especifique o nome do monitor de eventos e os tipos de eventos antes de gerar a sintaxe de opção de saída. Se o nome do monitor de eventos ou os tipos de eventos forem alterados após a geração da opção de saída, será exibida uma mensagem para lembrar o usuário de gerar novamente a opção de saída antes da criação do monitor de eventos. Se a opção de saída não for gerada novamente, serão geradas tabelas de eventos com base no nome do monitor de eventos especificado anteriormente. Information Catalog Center Scripts de Amostra de Configuração Os scripts de amostra ICCConfig.jacl e ICCConfig.properties são fornecidos com o Centro de Catálogo de Informações para a Web com o DB2 Embedded Application Server. É possível utilizar esses scripts de amostra para configurar o Centro de Catálogo de Informações para a Web com o WebSphere Application Server 5. Esses scripts estão localizados no diretório sqllib\samples\icweb. Configuração do Servidor Web Ao configurar o Centro de Catálogo de Informações para a Web com o DB2 Embedded Application Server, se seus metadados contiverem URLs que acessem arquivos no servidor, será necessário mapear as URLs para a localização correta utilizando aliases na configuração do servidor da Web. Também é necessário mapear os links de ajuda e de direitos autorais. Se você utilizar o DB2 Embedded Application Server, um servidor da Web deverá ser configurado corretamente e estar em execução para que esses links funcionem mesmo que não seja necessário conectar-se a um servidor da Web. Suplemento da Instalação e Configuração Arquivo de Configuração do Nó do DB2 - db2nodes.cfg O parâmetro resourcesetname é apenas suportado em AIX, HP-UX, Solaris Operating Environment e Linux. Em sistemas operacionais Linux, a coluna resourcesetname define um número que corresponde ao nó NUMA (Non-Uniform Memory Access) no sistema. O utilitário de sistema numactl deve estar disponível bem como um kernel 2.6 com suporte de política NUMA. Consulte a página man para numact1 para obter informações adicionais sobre suporte NUMA em sistemas operacionais Linux. Exemplo Utilizando resourcesetname em Sistemas Operacionais Linux Esse exemplo mostra como configurar um computador NUMA de quatro nós com cada nó lógico associado a um nó NUMA. Procedimento 1. Certifique-se de que há recursos NUMA em seu sistema. 2. Emita o seguinte comando: $ numactl --hardware Saída semelhante às exibições a seguir: available: 4 nodes (0-3) node 0 size: 1901 MB node 0 free: 1457 MB node 1 size: 1910 MB node 1 free: 1841 MB node 2 size: 1910 MB node 2 free: 1851 MB node 3 size: 1905 MB node 3 free: 1796 MB 3. Nesse exemplo, há quatro nós NUMA no sistema. Edite o arquivo db2nodes.cfg, como segue, para associar cada MLN (Multiple Logical Node) com um nó NUMA no sistema: 0 hostname 0 hostname 0 1 hostname 1 hostname 1 2 hostname 2 hostname 2 3 hostname 3 hostname 3 Variável de Registro DB2NOLIOAIO Substituída por DB2LINUXAIO (Linux) A variável de registro DB2NOLIOAIO para DB2 UDB (Universal Database) é reprovada como da Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9). Para usuários Linux, a variável de registro DB2NOLIOAIO foi substituída por DB2LINUXAIO. * Para ativar o suporte a AIO (E/S Assíncronas) no Linux, execute o seguinte comando: db2set DB2LINUXAIO=true e reinicie o DB2 UDB. Nota: Para utilizar AIO, os usuários devem instalar o libaio-0.3.98 ou posterior e ter um kernel que suporta AIO. * Para desativar o suporte a AIO no Linux, execute o seguinte comando: db2set DB2LINUXAIO=false e reinicie o DB2 UDB. Servidor de Aplicativos para o DB2 UDB O servidor de aplicativos para o DB2 UDB (Universal Database) não suporta mais a administração remota ou procedimentos armazenados. Os tópicos atualizados são os seguintes: Ativando o Servidor de Aplicativos para o DB2 UDB A ativação do banco de dados faz o seguinte: * Conecta-se a um banco de dados especificado * Cria e ocupa tabelas de metadados * Atualiza os parâmetros CFG do DBM, JDK_PATH e JAVA_HEAP_SZ * Instala o DB2 Web Services Application. Pré-requisito No Linux, depois de instalar o servidor de aplicativos e antes de ativá-lo, é necessário configurar o ambiente Linux Java. Consulte o manual Application Development Guide: Building and Running Applications para obter detalhes sobre como configurar o ambiente Linux Java. Procedimento Para ativar o servidor de aplicativos para o DB2 UDB, execute o seguinte: 1. Efetue logon no servidor DB2 como root em sistemas operacionais Linux ou UNIX ou como um usuário com privilégios de Administrador em sistemas operacionais Windows. 2. Para sistemas operacionais baseados em Linux- e UNIX-, execute o comando a seguir: . /db2instance_path/sqllib/db2profile em que db2instance_path é onde a instância do DB2 UDB foi criada. 3. Execute um dos seguintes comandos: * Para sistemas operacionais Linux e UNIX: AppServer_install_path/bin/enable.sh -db db_alias -user db_user -password db_password -db2path path_to_sqllib -instance instance_name -easpath path_to_eas -fencedid fenced_userid * Para sistemas operacionais Windows: AppServer_install_path\bin\enable -db db_alias -user db_user -password db_password -db2path path_to_sqllib -instance instance_name -easpath path_to_eas em que: * db_alias é o alias do banco de dados a ser ativado. * db_user é o ID do usuário a ser utilizado durante a conexão com o banco de dados. * db_password é a senha a ser utilizada com o ID do usuário de conexão com o banco de dados. * path_to_sqllib é o caminho para o diretório SQLLIB da instância do DB2 UDB. Este caminho é utilizado para atualizar DB2EAS com os arquivos JAR requeridos. * instance_name é o nome de uma instância do DB2 UDB. * path_to_eas é o caminho para o servidor de aplicativos incorporado. * fenced_userid é o ID do usuário para o usuário limitado. Depois que o servidor de aplicativos para o DB2 UDB é ativado, o servidor de aplicativos é iniciado automaticamente. Iniciando o Servidor de Aplicativos para o DB2 UDB Localmente O servidor de aplicativos deve ser iniciado utilizando o ID do usuário limitado para sistemas que criam serviços da Web em um ambiente .NET ou que executam apenas o XMR (XML Metadata Registry). Iniciando o Servidor de Aplicativos para o DB2 UDB Remotamente Esta seção foi removida. O servidor de aplicativos para DB2 UDB não suporta mais administração remota. Parando o Servidor de Aplicativos para DB2 UDB Localmente O servidor de aplicativos deve ser parado utilizando o ID do usuário limitado para sistemas que criam serviços da Web em um ambiente .NET ou que executam apenas o XMR (XML Metadata Registry). Parando o Servidor de Aplicativos para DB2 UDB Remotamente Esta seção foi removida. O servidor de aplicativos para DB2 UDB não suporta mais administração remota. Desinstalando o Servidor de Aplicativos para DB2 UDB Esta seção foi removida. O servidor de aplicativos para DB2 UDB não suporta mais administração remota. Ativação do DB2 Embedded Application Server O banco de dados ativado de um DB2 Embedded Application Server deve estar localizado em uma instância de 32 bits. Todos os bancos de dados acessados a partir do DB2 Embedded Application Server podem estar localizados em instâncias de 32 bits ou de 64 bits. Implementando o DB2 Web Tools Os servidores de aplicativos que utilizam JDK 1.4 não requerem mais a personalização da variável CLASSPATH durante a implementação do DB2 Web Tools. Todas as dependências, incluindo as do analisador e do transformador XML, agora são implementadas com o módulo da Web e espera-se que sejam carregadas a partir do diretório WEB-INF\lib, de acordo com a especificação do J2EE. Esta alteração afeta dois tópicos de informações: * Implementando o DB2 Web Tools em servidores de aplicativos WebLogic * Implementando o DB2 Web Tools em outros servidores de aplicativos Os tópicos atualizados são os seguintes: Implementando o DB2 Web Tools em Servidores de Aplicativos WebLogic Essa tarefa descreve como implementar e configurar o DB2 Web Tools (incluindo o Web Command Center e o Web Health Center) no BEA WebLogic 7.0. Essas ferramentas são executadas como aplicativos da Web em um servidor da Web para fornecer acesso a servidores DB2 através de navegadores da Web. Pré-requisitos Antes de instalar o DB2 Web Tools no WebSphere, certifique-se de ter: * Servidor de Aplicativos BEA WebLogic 7.0. * IBM DB2 Administration Client Versão 8. * Um navegador da Web que seja compatível com HTML 4.0. Nota: O DB2 Web Tools foi testado utilizando o Netscape 4.x, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Internet Explorer 5.x, Opera 6.x, Konqueror 3.x (Linux) e o EudoraWeb 2.x (Palm OS). A utilização de determinados navegadores da Web que não foram testados pode requerer que seja incluída uma referência explícita na configuração do servlet. Restrições As restrições a seguir aplicam-se à implementação do DB2 Web Tools: * Conversões de vários idiomas e páginas de códigos entre a camada média e servidores DB2 não são suportadas. Embora o idioma para o servidor seja o que é utilizado para exibição, alguns caracteres podem aparecer incorretamente. * Para ver os alertas de funcionamento para bancos de dados, espaços de tabelas e contêineres de espaços de tabelas no Centro de Funcionamento da Web, é necessário assegurar que os bancos de dados sejam catalogados no servidor de aplicativos da Web. * A utilização dos botões do navegador da Web (Parar, Voltar, Histórico) não é suportada durante a utilização do DB2 Web Tools. * Se você estiver utilizando o Netscape Navigator 4 com o DB2 Web Tools, a tela do seu navegador poderá não ser atualizada adequadamente. Se você tiver este problema, poderá atualizar sua tela reduzindo a janela e, em seguida, maximizando-a. Você também pode atualizar a exibição ocultando a janela do navegador sob outra janela e, em seguida, colocando-a em primeiro plano novamente. * Para designar seu próprio alias a qualquer sistema DB2 UDB (Universal Database), nó de instância ou banco de dados, você deve catalogá-lo explicitamente no servidor de aplicativos utilizando o Assistente de Configuração do DB2 ou o Centro de Controle do DB2. * Durante sua primeira inicialização, o DB2 Web Tools requer um tempo mais longo para ser inicializado do que nas inicializações subseqüentes. A maior parte desta espera deve-se ao processo de catálogo automático. Se não deseja utilizar a funcionalidade de catálogo automático, você poderá reduzir o tempo de espera, desativando a catalogação automática por meio da configuração do servlet. Nota: Os parâmetros de configuração do servlet estão disponíveis no arquivo descritor de implementação web.xml. Os nomes de parâmetros e valores padrão estão sujeitos a alteração em cada release. Alguns servidores de aplicativos podem permitir alterações nestes parâmetros, por meio de sua interface ou pela edição direta do arquivo web.xml. * O buffer de saída (resultados) possui um tamanho máximo absoluto de 1 MB durante a utilização de um navegador de desktop ou de laptop, mesmo que esteja configurado para capacidade maior. No caso de navegadores da Web para PDA, o limite é de 1 KB. * Em sistemas operacionais Linux, UNIX, e Windows, o DB2 Web Tools descobre e cataloga automaticamente todos os sistemas na mesma rede TCP/IP que o servidor de aplicativos. Sistemas na mesma rede TCP/IP têm os mesmos três primeiros dígitos no endereço IP. As ferramentas tentam catalogar os nós do sistema DB2 UDB utilizando o nome do host TCP/IP remoto original. Se houver duplicação de nomes, as ferramentas atribuirão um nome aleatório exclusivo. É necessário catalogar explicitamente todos os outros servidores de administração do DB2 no servidor de aplicativos se você desejar que eles estejam acessíveis. Isto inclui servidores que utilizam TCP/IP e não estão na mesma rede TCP/IP que o servidor de aplicativos, além de servidores que não utilizam TCP/IP. * Em sistemas operacionais Linux, UNIX, e Windows, o DB2 Web Tools tenta descobrir e catalogar automaticamente todos os nós de instância e bancos de dados do DB2 UDB que residem em sistemas DB2 UDB catalogados. É possível configurar uma instância remota para vários protocolos de comunicação, portanto, o catálogo conterá uma entrada de nó separada para cada protocolo ao qual uma instância catalogada automaticamente oferece suporte. Se houver duplicação de nomes, as ferramentas atribuirão um nome aleatório exclusivo. Procedimento Para instalar o DB2 Web Tools em servidores de aplicativos WebLogic: 1. Implemente o DB2 Web Tools através do console administrativo do WebLogic fazendo o seguinte: a. Inicie o console administrativo do WebLogic. b. Clique em Domínio -> Implementações -> Aplicativos da Web na área de janela à esquerda da janela. c. Clique no link Configurar um Novo Aplicativo da Web para instalar o aplicativo da Web DB2 Web Tools. d. Procure a listagem do sistema de arquivos para localizar Sqllib\tools\web\db2wa.war. e. Clique em Selecionar ao lado do nome do arquivo db2wa.war. f. Escolha um servidor da lista de servidores disponíveis para hospedar o DB2 Web Tools, selecione o servidor e clique na seta para mover o servidor para os servidores de destino. Nota: É obrigatório preservar o nome original db2wa, pois o DB2 Web Tools o tem como código permanente. g. Clique em Configurar e Implementar. h. Aguarde até que o servidor de aplicativos atualize o status de implementação do aplicativo da Web no servidor selecionado. Se bem-sucedido, ele deve mostrar Deployed=true 2. Chame o aplicativo da Web do DB2 Web Tools, que está localizado em: http://server_name:app_server_port_number/db2wa Por exemplo, http://server_name:7001/db2wa. Implementando o DB2 Web Tools em Outros Servidores de Aplicativos Essa tarefa descreve como implementar e configurar o DB2 Web Tools (incluindo o Web Command Center e o Web Health Center) em outros servidores de aplicativos como Tomcat 4.0 e Macromedia JRun 4.0. Essas ferramentas são executadas como aplicativos da Web em um servidor da Web para fornecer acesso a servidores DB2 através de navegadores da Web. Pré-requisitos Antes de instalar o DB2 Web Tools, certifique-se de ter: * Um servidor de aplicativos, como: * Tomcat 4.0 Servlet/JSP Container (http://jakarta.apache.org/tomcat/) * Macromedia JRun 4.0 * IBM DB2 Administration Client Versão 8. * Um navegador da Web que seja compatível com HTML 4.0. Restrições As restrições a seguir aplicam-se à implementação do DB2 Web Tools: * Conversões de vários idiomas e páginas de códigos entre a camada média e servidores DB2 não são suportadas. Embora o idioma para o servidor é aquele que é exibido, alguns caracteres podem não aparecer corretamente. * Para ver os alertas de funcionamento para bancos de dados, espaços de tabelas e contêineres de espaços de tabelas no Centro de Funcionamento da Web, é necessário assegurar que os bancos de dados sejam catalogados no servidor de aplicativos da Web. * A utilização dos botões do navegador da Web (Parar, Voltar, Histórico) não é suportada durante a utilização do DB2 Web Tools. * Se você estiver utilizando o Netscape Navigator 4 com o DB2 Web Tools, a tela do seu navegador poderá não ser atualizada adequadamente. Se você tiver este problema, poderá atualizar sua exibição, minimizando a janela e, em seguida, exibindo-a novamente. Você também pode atualizar a exibição ocultando a janela do navegador sob outra janela e, em seguida, colocando-a em primeiro plano novamente. * Para designar seu próprio alias a qualquer sistema DB2 UDB, nó de instância ou banco de dados, você deve catalogá-lo explicitamente no servidor de aplicativos utilizando o Assistente de Configuração do DB2 ou o Centro de Controle do DB2. * Durante sua primeira inicialização, o DB2 Web Tools requer um tempo mais longo para ser inicializado do que nas inicializações subseqüentes. A maior parte desta espera deve-se ao processo de catálogo automático. Se não deseja utilizar a funcionalidade de catálogo automático, você poderá reduzir o tempo de espera, desativando a catalogação automática por meio da configuração do servlet. Nota: Os parâmetros de configuração do servlet estão disponíveis no arquivo descritor de implementação web.xml. Os nomes de parâmetros e valores padrão estão sujeitos a alteração em cada release. Alguns servidores de aplicativos podem permitir alterações nestes parâmetros, por meio de sua interface ou pela edição direta do arquivo web.xml. * O buffer de saída (resultados) tem um tamanho máximo absoluto de 1 MB quando utilizar um navegador de desktop ou de laptop, mesmo que esteja configurado para mais. No caso de navegadores da Web para PDA, o limite é de 1 KB. * Em sistemas operacionais Linux, UNIX, e Windows, o DB2 Web Tools descobre e cataloga automaticamente todos os sistemas na mesma rede TCP/IP que o servidor de aplicativos. Sistemas na mesma rede TCP/IP têm os mesmos três primeiros dígitos no endereço IP. As ferramentas tentam catalogar os nós do sistema DB2 UDB utilizando o nome do host TCP/IP remoto original. Se houver duplicação de nomes, as ferramentas atribuirão um nome aleatório exclusivo. É necessário catalogar explicitamente todos os outros servidores de administração do DB2 no servidor de aplicativos se você desejar que eles estejam acessíveis. Isto inclui servidores que utilizam TCP/IP e não estão na mesma rede TCP/IP que o servidor de aplicativos, além de servidores que não utilizam TCP/IP. * Em sistemas operacionais Linux, UNIX, e Windows, o DB2 Web Tools tenta descobrir e catalogar automaticamente todos os nós de instância e bancos de dados do DB2 UDB que residem em sistemas DB2 UDB catalogados. É possível configurar uma instância remota para vários protocolos de comunicação, portanto, o catálogo conterá uma entrada de nó separada para cada protocolo ao qual uma instância catalogada automaticamente oferece suporte. Se houver duplicação de nomes, as ferramentas atribuirão um nome aleatório exclusivo. Procedimento A seguir são apresentados os procedimentos para a instalação do DB2 Web Tools utilizando servidores de aplicativos como Tomcat 4.0 ou Macromedia JRun 4.0: Tomcat 4.0 1. Prepare o arquivo de configuração do Tomcat 4.0 (CLASSPATH), fazendo o seguinte: a. Crie uma nova variável de ambiente/sistema CATALINA_HOME, para conter o caminho (diretório raiz) para o Tomcat 4.0. Por exemplo, D:\jakarta-tomcat-4.0.3. b. Confirme se o Contêiner de Servlet/JSP do Tomcat está em funcionamento: 1) Inicie o Tomcat executando startup.bat, a partir do diretório bin do Tomcat. 2) Acesse a página da Web principal http://localhost:8080/ por meio de um navegador da Web. 2. Implemente o DB2 Web Tools no Tomcat Servlet/JSP Container, localizando o caminho de instalação do DB2 Web Tools (isto é, Sqllib\tools\web\db2wa.war) e copiando db2wa.war para o diretório de implementação de Tomcat (isto é, o diretório webapps de Tomcat). 3. Chame o DB2 Web Tools no Tomcat Servlet/JSP Container fazendo o seguinte: a. Abra uma Janela de Comandos do DB2 e altere o diretório para o diretório bin do Tomcat. b. Inicie o Tomcat utilizando startup.bat e confirme se um novo diretório (db2wa) foi incluído no diretório webapps. Nota: A execução de startup.bat a partir de uma janela de prompt de comando não define DB2PATH. Para ativar o DB2PATH que está sendo definido, a linha CLASSPATH precisa ser alterada para se referir explicitamente ao caminho de instalação do DB2 UDB em vez da variável de ambiente %DB2PATH%. c. O aplicativo corporativo DB2 Web Tools está localizado em http://localhost:8080/db2wa e pode ser acessado com um navegador da Web compatível com HTML 4.0. JRun 1. Prepare um novo servidor de aplicativos para o DB2 Web Tools concluindo as tarefas a seguir: Recomendação Criar um novo servidor de aplicativos é recomendado, mas não obrigatório. Para fins de testes, o servidor padrão pode ser utilizado e apenas a configuração do caminho de classe de JVM e da implementação é requerida. a. Inicie o Console de Gerenciamento de JRun e efetue login como administrador do servidor de aplicativos. b. Crie um novo servidor de aplicativos utilizando Criar Novo Servidor, localizado na parte superior direita da página principal. Não altere a seleção do nome do host localhost. c. Digite um novo nome de servidor (DB2WebToolsServer) e clique no Diretório de Servidor JRun. O valor é preenchido automaticamente. d. Clique no botão Criar Servidor. e. Registre os valores gerados ou insira novos valores para: * URL Provedor de JNDI * Número da Porta do Servidor da Web. Este seria o valor a ser utilizado na URL para o DB2 Web Tools (isto é, http://localhost:web_server_port_numer/db2wa) * Número da Porta do Proxy do Conector da Web f. Clique em Atualizar Números de Portas, se necessário e feche a janela. 2. Implemente o DB2 Web Tools no servidor de aplicativos JRun concluindo as tarefas a seguir: a. Inicie o servidor de aplicativos selecionado para hospedar o aplicativo da Web do DB2 Web Tools (DB2WebToolsServer, padrão ou qualquer outro exceto admin). b. Clique em Aplicativos da Web e em Incluir. c. Procure a seção Arquivo de Implementação para selecionar o arquivo Sqllib\tools\web\db2wa.war no caminho de instalação do DB2 UDB. d. Clique em Implementar e confirme se o caminho de contexto é /db2wa. e. Selecione o servidor de aplicativos e confirme se o aplicativo DB2 Web Tools aparece na seção Aplicativos da Web. Não clique em Aplicar nesta página. f. Selecione o link Home no painel superior esquerdo da página principal. g. Reinicie o servidor de aplicativos a partir da visualização Home que contém o DB2 Web Tools (DB2WebToolsServer). O aplicativo corporativo DB2 Web Tools está localizado em http://localhost:your_web_server_port_numer/db2wa e pode ser acessado com um navegador da Web compatível com HTML 4.0. E/S Direta em Dispositivos de Blocos (Linux) As E/S Diretas são, agora, suportadas em sistemas de arquivos e em dispositivos de bloco para distribuições do Linux com um kernel 2.6. A E/S Direta em dispositivos de blocos é uma maneira alternativa de especificar contêineres de dispositivos para acesso direto ao disco ou para E/S brutas. O desempenho de E/S Direta é equivalente ao método de dispositivo de caracteres brutos. O DB2 UDB (Universal Database) ativa a Direct I/O ao abrir o espaço de tabelas quando a instrução CREATE TABLESPACE especifica um nome de dispositivo de bloco para o caminho do contêiner. Anteriormente, o mesmo desempenho era obtido utilizando o método de E/S brutas, que requeria a ligação do dispositivo de bloco a um dispositivo de caractere utilizando o utilitário raw. Tabela 37. Comparação de Direct I/O e de E/S Brutas +----------------------------------+----------------------------------+ | E/S Brutas Utilizando | E/S Brutas Utilizando Driver de | | Dispositivo de Bloqueio com E/S | Dispositivo de Caractere e | | Diretas (Método Novo) | Utilitário Bruto (Método Antigo) | +----------------------------------+----------------------------------+ | CREATE TABLESPACE dms1 | CREATE TABLESPACE dms1 | | MANAGED BY DATABASE | MANAGED BY DATABASE | | USING (DEVICE '/dev/sda5' | USING (DEVICE '/dev/raw/raw1' | | 11170736) | 11170736) | +----------------------------------+----------------------------------+ Embora o DB2 UDB ainda suporte o método de utilização do utilitário bruto para E/S brutas, as distribuições recentes rejeitam esse recurso que poderá ser removido futuramente. O método preferido é a utilização do novo método, especificando os dispositivos diretamente. Recomendação Se deseja explorar o acesso direto ao disco, crie seus contêineres de dispositivos DMS utilizando Direct I/O para evitar futuros problemas de migração. Nota: A Direct I/O não é suportada pelo DB2 UDB no Linux/390. Daemon do DB2 Information Center (Linux e UNIX) O daemon do DB2 Information Center é responsável pelo controle do servidor de documentação do DB2. O daemon, que faz parte da instalação do DB2 Information Center, é composto de dois arquivos: * db2icd - o script de inicialização * db2ic.conf - o arquivo de configuração Estes arquivos estão instalados nos seguintes locais: AIX /etc/db2icd /var/db2/v81/db2ic.conf HP /sbin/init.d/db2icd /var/opt/db2/v81/db2ic.conf Solaris Operating Environment /etc/init.d/db2icd /var/db2/v81/db2ic.conf Linux /etc/init.d/db2icd /var/db2/v81/db2ic.conf Iniciando ou Parando o Daemon do Centro de Informações (AIX, Solaris Operating Environment, HP, Linux) A única vez que você deve iniciar ou parar o daemon manualmente é quando desejar alterar as variáveis de configuração para o daemon. Normalmente, o daemon é iniciado na inicialização do sistema, de acordo com os níveis de execução criados durante a instalação do DB2 Information Center. Procedimento Para parar e iniciar o daemon do Centro de Informações: 1. Pare o daemon se ele já estiver em execução. Em uma linha de comandos, digite: INIT_DIR/db2icd stop em que INIT_DIR é o diretório de instalação do arquivo db2icd listado anteriormente. 2. Altere qualquer uma das variáveis para o daemon editando o arquivo db2ic.conf. No momento, você pode modificar o número da porta TCP na qual a documentação está disponível e o local do espaço de trabalho temporário utilizado pelo daemon durante sua execução. 3. Inicie o daemon. Em uma linha de comandos, digite: INIT_DIR/db2icd start em que INIT_DIR é o diretório de instalação do arquivo db2icd listado anteriormente. Quando o daemon for iniciado, ele utilizará as novas variáveis de ambiente. Existe também uma opção para encerrar e reiniciar o daemon imediatamente. Em uma linha de comandos, digite: INIT_DIR/db2icd restart em que INIT_DIR é o diretório de instalação do arquivo db2icd listado anteriormente. Você pode verificar o status do daemon a qualquer momento. Em uma linha de comandos, digite: INIT_DIR/db2icd status em que INIT_DIR é o diretório de instalação do arquivo db2icd listado anteriormente. O daemon retorna o status atual e exibe o ID do processo ou processos do daemon, se ele estiver ativo. Palavras-chave do Arquivo de Resposta e Arquivos de Amostra Para instalar o DB2 Information Center Versão 8.2 utilizando um arquivo de resposta, utilize as informações a seguir: Palavra-chave do Arquivo de Resposta (PROD) INFORMATION_CENTER Nome do Arquivo de Resposta db2doce.rsp Códigos de Erros de Instalação do Arquivo de Resposta O código de erro a seguir é apenas para Windows e não é aplicável a sistemas operacionais Linux e UNIX. 3010 A instalação foi bem-sucedida, no entanto, é requerido um reinício do sistema para concluir a instalação. Contas de Usuário Requeridas para Instalação de Servidores DB2 (Windows) Aumentar Quotas O direito do usuário Aumentar quotas foi alterado para Ajustar quotas de memória para um processo nos sistemas operacionais Windows XP e Windows Server 2003. Direitos de Usuário Concedidos pelo Instalador do DB2 - Depurar Programas O programa de instalação do DB2 não concede o direito de usuário de Depurar Programas. O instalador do DB2 concede os seguintes direitos de usuário: * Agir como parte do sistema operacional * Criar objeto token * Bloquear páginas na memória * Efetuar o início de sessão como um serviço * Aumentar cotas * Substituir um token de nível de processo Suporte E/S Assíncronas (Linux) O suporte AIO (E/S Assíncronas) está, agora, disponível no Linux (2.6 e alguns kernels 2.4) para dispositivos brutos e sistemas de arquivos O_DIRECT. AIO aprimoram o desempenho do limpador de páginas. É possível ativar ou desativar as AIO no Linux emitindo o comando db2set. Para utilizar AIO, os usuários devem instalar o libaio-0.3.98 ou posterior e ter um kernel que suporta AIO. Os usuários devem também executar o comando db2set DB2LINUXAIO=true e reiniciar o DB2 Universal Database. Comando db2ln Modificado para Criar Links de Biblioteca de 64 bits do DB2 UDB (Linux e UNIX) Em níveis anteriores do DB2 UDB (Universal Database) Versão 8, o comando db2ln criou determinados links do DB2 em /usr/lib and /usr/include. Em plataformas em que são suportadas instâncias do DB2 UDB de 32 e de 64 bits, esses links apontam para arquivos de biblioteca ou incluem arquivos em DB2DIR/lib64 ou DB2DIR/include64 por padrão, onde DB2DIR é o diretório em que o DB2 UDB Versão 8 está instalado. Se o padrão não for desejado, você pode especificar a largura de bit executando o comando db2ln com o sinalizador -w: db2ln -w 32|64 Isso impede que instâncias de 32 bits do DB2 UDB coexistam com instâncias de 64 bits em algumas plataformas. A partir do DB2 UDB Versão 8.2, o comando db2ln cria links de biblioteca de 64 bits do DB2 nessas plataformas nos diretórios apropriados. Neste caso, o sinalizador -w é utilizado apenas para preencher /usr/include. Quando o comando db2ln cria os links para os arquivos de biblioteca do DB2 UDB, os links de 32 e de 64 bits são criados em plataformas suportadas. Isto permite que tanto as instâncias de 32 bits como as de 64 bits existam e sejam executadas ao mesmo tempo. Em algumas distribuições do Linux, o rpm de desenvolvimento do libc vem com a biblioteca /usr/lib/libdb2.so ou /usr/lib64/libdb2.so. Esta biblioteca é utilizada para a implementação do DB Berkeley da Sleepycat Software e não é associada ao DB2 UDB da IBM. Porém, este arquivo impede que os comandos db2ln e db2rmln funcionem. O comando db2ln não sobrescreve o arquivo e o comando db2rmln não remove o arquivo. Neste caso, para compilar aplicativos utilizando o DB2 UDB, os processos de compilação e vinculação devem fornecer um caminho completo para os cabeçalhos e as bibliotecas do DB2 UDB, respectivamente. Este é o método recomendado porque permite a compilação e a vinculação em vários releases do DB2 UDB no mesmo computador. Consulte o manual Installation and Configuration do DB2 UDB Versão 8.2 para obter detalhes sobre as restrições ao utilizar o comando db2ln. Query Patroller Atualização do Comportamento da Classe de Consulta Uma mensagem de aviso é retornada quando uma das tarefas a seguir é executada através da linha de comandos do Query Patroller Center ou do Query Patroller: * Incluindo uma Classe de Consulta * Removendo uma Classe de Consulta * Atualizando o Custo Máximo de uma Consulta para uma Classe de Consulta A mensagem de aviso é: DQP1024W Criação, alteração ou remoção de uma classe de consultar não terá efeito até reiniciar o servidor Query Patroller. De forma semelhante, o DB2 Query Patroller(TM) Guide: Installation, Administration, and Usage, Versão 8.2, afirma se é necessário reiniciar o servidor Query Patroller após criar, alterar ou remover classes de consulta para que as alterações tenham efeito. A mensagem e a instrução no guia não são mais precisas. As três classes de consulta listadas anteriormente terão efeito imediatamente, a menos que haja consultas em fila ou em execução. Se há consultas em fila ou em execução, incluindo consultas recém enviadas, as alterações de classes de consulta terão efeito ao concluir as consultas em fila ou em execução. Se você não deseja aguardar que todas as consultas em fila ou em execução sejam concluídas, é necessário reiniciar o servidor Query Patroller. Nota: Assim como em versões anteriores do Query Patroller, a atualização do número máximo de consultas para uma classe de consulta sempre tem efeito imediatamente. Atualizações de Definições para Estados de Consultas Gerenciados Os significados dos status de consulta Cancelado e Concluído são atualizados como se segue: Cancelado A consulta foi cancelada, através da linha de comandos do Query Patroller Center ou do Query Patroller, pelo administrador, submissor ou um operador cujo perfil tem o privilégio MONITORING com autoridade de edição. Apenas os tipos de consultas em execução, retida, liberada e enfileirada podem ser canceladas. Concluído A consulta foi concluída com êxito. Nota: Embora a consulta em si tenha sido concluída sem erro, o aplicativo poderá receber um erro se a conclusão tiver sido causada por um evento externo, como uma aplicativo DB2 force. Criar Tabelas de Explicação antes de Executar o Gerador de Dados Históricos do Query Patroller Ao executar o gerador de dados históricos para o Query Patroller, se as Tabelas de explicação ainda não existirem, o gerador irá criá-las. No entanto, é altamente recomendável que você crie as Tabelas de Explicação antes de executar o gerador de dados históricos. Ao criar as Tabelas de Explicação, certifique-se de criá-las na mesma partição. Criar ativamente as Tabelas de Explicação na mesma partição aprimora o desempenho dos recursos do Explain. Esse aperfeiçoamento aumenta o desempenho do gerador de dados históricos. Verificando Arquivos de Registro do Query Patroller para Análise do Histórico Se a coluna Explain Run do relatório do Query Activity over Time (Análise do Histórico) mostrar um status de Ran unsuccessfully para uma consulta, os dados históricos não foram gerados para aquela consulta. Portanto, a consulta não aparecerá em nenhum relatório ou gráfico de análise do histórico. Conforme documentado na Versão 8, para determinar porque a consulta não foi bem-sucedida, você pode examinar o arquivo qpuser.log. No entanto, além de examinar o arquivo qpuser.log, você deve também examinar o arquivo qpdiag.log. Encerramento Anormal do Gerador de Dados Históricos Se você executar o gerador de dados históricos e encerrá-lo de forma anormal, receberá um erro na próxima vez em que tentar executar o gerador de dados históricos. Exemplos de encerramento anormal incluem: * O DB2 Universal Database é interrompido inesperadamente * Emissão do comando db2stop force * Emissão do comando killdb2 force Quando o gerador de dados históricos for encerrado anormalmente, será necessário emitir o seguinte comando antes de tentar executar novamente o gerador de dados históricos: qp -d database generate historical_data stop onde database identifica o banco de dados onde o comando está sendo executado. Atualização Dinâmica de Classes de Consultas Algumas operações de classe de consultas não requerem mais que o Query Patroller seja parado e reiniciado para se tornarem efetivas. Na tabela a seguir, uma consulta ativa é uma consulta cujo status é Executar ou Enfileirar. Tabela 38. Condições para que as Alterações na Classe de Consultas Sejam Efetivadas +----------------------------------+----------------------------------+ | Tipo de Alteração | Condições para que Alterações | | | Sejam Efetivadas | +----------------------------------+----------------------------------+ | Inclusão, remoção ou atualização | Se não existirem consultas | | de uma classe de consultas. | ativas, as alterações são | | | efetuadas imediatamente. | +----------------------------------+----------------------------------+ | Atualização de uma classe de | É efetuada imediatamente, mesmo | | consulta que envolve apenas uma | que existam consultas ativas. | | alteração no Número Máximo de | | | Consultas. | | +----------------------------------+----------------------------------+ | Atualização de uma classe de | Se existirem consultas ativas, a | | consulta que envolve apenas uma | atualização será efetuada | | alteração no Custo Máximo de uma | quando: | | Consulta. | * O Query Patroller for parado | | | e reiniciado. | | | * Não existirem mais consultas | | | ativas. | | | Nota: Quando existir uma | | | pendência no Custo Máximo de uma | | | Consulta, atualizações | | | posteriores de qualquer tipo de | | | classes de consultas não serão | | | efetuadas até que uma das duas | | | condições acima sejam cumpridas. | +----------------------------------+----------------------------------+ | Inclusão ou remoção de uma | Se existirem consultas ativas, a | | classe de consulta. | inclusão ou a remoção será | | | efetuada quando: | | | * O Query Patroller for parado | | | e reiniciado. | | | * Não existirem mais consultas | | | ativas. | +----------------------------------+----------------------------------+ Comportamento de Consultas Aninhadas Consultas aninhadas não podem ser enfileiradas. Ao contrário, uma consulta aninhada será executada imediatamente quando exceder o limite que normalmente gera o enfileiramento. Limitações pelo Tipo de Instrução SQL Ao contrário do que foi dito na documentação anterior, as consultas com as instruções a seguir podem ser enfileiradas: * Consultas contendo SQL estático com variáveis de host * Consultas contendo uma função de valor de identidade (IDENTITY_VAL_LOCAL) ou uma função de valor de seqüência, tais como NEXT VALUE FOR ou PREVIOUS VALUE FOR Limitação de Resolução ao Utilizar o Terminal Services Client Ao utilizar o Terminal Services Client na resolução 640x480 para conectar-se a um desktop remoto que esteja executando o Query Patroller Center, a janela Preferências de Envio poderá parecer vazia. Para que a janela Preferências de Envio seja exibida corretamente, é necessário utilizar uma resolução superior a 640x480. Suporte ao Novo Grupo para Envio de Consultas Iniciando na Versão 8.2, o DB2 UDB (Universal Database) suporta grupos de usuários além dos grupos do sistema operacional. Portanto, existe uma pequena alteração na lista drop-down Perfil do Submissor a Ser Utilizado na janela Preferências de Envio de Consulta do Query Patroller Center. Se efetuou login, mas não precisa da autoridade DBADM ou Editar Privilégio para administração de usuários do Query Patroller, você mesmo poderá apenas incluir ou atualizar uma preferência de envio. Neste caso, a lista drop-down Perfil do Submissor a ser Utilizado contém perfis existentes do submissor dos grupos do DB2 UDB aos quais você pertence, em vez de apenas os grupos de sistema operacional aos quais você pertence. Se você efetuou login e possui a autoridade DBADM ou Editar Privilégio para administração de usuários do Query Patroller, poderá incluir ou atualizar preferências de envio para outros usuários. Neste caso, a lista drop-down Perfil do Submissor a Ser Utilizado contém todos os perfis do submissor de grupos existentes. Limitações de Planejamento do Query Patroller Ao trabalhar com planejamentos no Query Patroller Center, você pode utilizar a janela Planejamento para salvar planejamentos em um arquivo e importá-los posteriormente. Se você tiver um planejamento salvo utilizando o FixPak 6 ou anterior, não poderá importar o planejamento utilizando a Versão 8.2 ou posterior. Esta limitação ocorre devido à alteração na serialização entre níveis JDK introduzidos com o DB2 UDB Versão 8.2. Autorização Requerida para Utilizar o Comando RUN IN BACKGROUND QUERY Para executar o comando RUN IN BACKGROUND QUERY, você precisa ser o submissor que enviou a consulta originalmente. Criando um Alias para uma Tabela de Resultados A partir do Query Patroller Versão 8.1 FixPak 5, o Query Patroller parou de criar tabelas de resultados no esquema que correspondia ao ID de autorização do submissor da consulta. Em vez disso, o Query Patroller começou a criar tabelas de resultados em um esquema DB2QPRT comum. Para permitir que tabelas de resultados sejam referidas utilizando o esquema do submissor, o Query Patroller Versão 8.2 introduz uma opção para criar automaticamente um alias para cada nova tabela de resultados criada pelo Query Patroller. A tabela de resultados é criada no esquema DB2QPRT e o alias é criado em um esquema que corresponde ao ID de autorização do submissor. Para ativar ou desativar esta opção, emita o comando UPDATE QP_SYSTEM com a opção CREATE_RESULT_TABLE_ALIASES: >>-UPDATE QP_SYSTEM USING---------------------------------------> >--+-DEFAULT------------------------------+-------------------->< '-CREATE_RESULT_TABLE_ALIASES--+-'Y'-+-' '-'N'-' Removendo Aliases Órfãos da Tabela de Resultados Os aliases criados com a opção CREATE_RESULT_TABLE_ALIASES são automaticamente eliminados quando uma tabela de resultados é eliminada. No entanto, existem duas situações em que uma tabela de resultados pode ser eliminada sem a eliminação do alias correspondente. * Quando a tabela de resultados for eliminada manualmente sem utilizar a linha de comandos qp ou o Query Patroller Center. * Quando a tabela de resultados for eliminada utilizando a linha de comandos qp ou o Query Patroller Center com a autoridade de um operador que não é o submissor da consulta e não possui a autoridade DBADM. Para limpar aliases que não possuem tabelas de resultados correspondentes, foi criado um novo comando, REMOVE RESULT_TABLE_ALIASES. Este comando é executado automaticamente sempre que as tabelas de resultados são limpas como parte do processo planejado de limpeza de tabelas de resultados do Query Patroller. O comando REMOVE RESULT_TABLE_ALIASES obtém a lista de aliases a serem limpos utilizando a seguinte consulta: with a as (select tabschema, tabname from syscat.tables where type = 'A' and tabname like 'QUERY%_RESULTS'), t as (select tabname from syscat.tables where type = 'T' and tabname like 'QUERY%_RESULTS') select all tabschema, tabname from a where not exists (select * from t where t.tabname=a.tabname) Pré-requisitos Você deve ter a autoridade DBADM. Procedimento 1. Emita o comando REMOVE RESULT_TABLE_ALIASES Este comando remove todos os aliases existentes após a eliminação das tabelas de resultados correspondentes. Os aliases foram originalmente criados pelo Query Patroller para tabelas de resultados. Sintaxe do comando >>-REMOVE RESULT_TABLE_ALIASES--------------------------------->< Nota: Para obter informações sobre como digitar comandos do Query Patroller utilizando a interface da linha de comandos e a sintaxe geral de comandos do Query Patroller, consulte a interface da linha de comandos do Query Patroller. O ID de Usuário Protegido Requer o Arquivo qpdiag.log e o Caminho de Acesso de Gravação O Query Patroller utiliza alguns procedimentos armazenados protegidos que podem registrar entradas para o arquivo qpdiag.log. Portanto, o ID de usuário protegido deve ter acesso à gravação para o arquivo qpdiag.log e o caminho em que o arquivo qpdiag.log reside. Iniciação Rápida Atualizando o Centro de Informações do DB2 Instalado em seu Computador ou em um Servidor de Intranet Para atualizar o DB2 Information Center instalado localmente, faça download do FixPak de documentação do DB2 mais recente do endereço http://www.ibm.com/software/data/db2/udb/support/downloadv8_docfix.html. No entanto, os FixPaks de documentação do DB2 não são liberados freqüentemente e podem não refletir o nível mais atual da documentação do DB2. A versão mais recente da documentação do DB2 é sempre a versão do DB2 Information Center hospedado no endereço http://publib.boulder.ibm.com/infocenter/db2help/ Requisitos de Memória No mínimo, o DB2 UDB (Universal Database) requer 256 MB de RAM. Para um sistema que execute somente o DB2 UDB e as ferramentas DB2 GUI, é requerido o mínimo de 512 MB de memória RAM. Porém, 1 GB de memória RAM é recomendado para um desempenho aprimorado. Esses requisitos não incluem quaisquer requisitos de memória adicionais para outro software que esteja em execução em seu sistema. Ao determinar os requisitos de memória, esteja atento ao seguinte: * Para suporte ao cliente do DB2, estes requisitos de memória são para uma base de 5 conexões de cliente simultâneas. Serão requeridos mais 16 MB de RAM para cada 5 conexões do cliente. * Os requisitos de memória são afetados pelo tamanho e complexidade do seu sistema de banco de dados, bem como pela extensão da atividade do banco de dados e pelo número de clientes acessando o sistema. * Nos sistemas operacionais Linux, é recomendável um espaço de SWAP de pelo menos o dobro da quantidade de RAM, mas não é obrigatório. Esclarecimento do Suporte ao Cliente para o DB2 UDB O tópico "DB2 clients" na versão 8.1 do guia Iniciação Rápida para Clientes do DB2 afirma o seguinte: Os clientes DB2 podem se conectar a servidores DB2 dois releases posteriores ou um release anterior no nível de release do cliente e também a servidores no mesmo nível de release. Uma emenda para essa instrução é a seguinte: Embora as conexões de clientes da Versão N com servidores da Versão N + 2 sejam possíveis em alguns ambientes, a equipe de suporte do DB2 fornecerá suporte para esta configuração apenas se a Versão N ainda estiver funcionando. Quando a Versão N é retirada de funcionamento, esta configuração não é mais suportada pela equipe de suporte do DB2. Os clientes do DB2 Versão 7 que se conectam a um servidor DB2 Versão 8 não são mais suportados pela equipe de suporte do DB2, porque a Versão 7 foi retirada de funcionamento. Modificando os Parâmetros do Kernel (Linux) Antes de instalar o DB2 UDB, você deve considerar a atualização dos parâmetros de kernel do Linux. O DB2 UDB (Universal Database) aumenta automaticamente os limites do IPC, quando necessário. Talvez você ainda queira aumentar mais estes limites, dependendo de suas necessidades específicas. Pré-requisitos Você deve ter autoridade root para modificar parâmetros do kernel. Procedimento Para atualizar os parâmetros do kernel: Red Hat e SuSE Sistemas que utilizam a série 2.4.x do kernel têm um valor padrão para o parâmetro de fila de mensagens (msgmni), que permite somente algumas conexões simultâneas com o DB2 UDB. Os parâmetros da matriz de semáforo também precisam ser alterados para o DB2 UDB ser executado com êxito. Para verificar o segmento de memória compartilhada, a matriz de semáforo e os limites de fila de mensagens, emita o comando ipcs -l. A saída a seguir é do comando ipcs -l. # ipcs -l ------ Limites de Memória Compartilhada -------- número máximo de segmentos = 4096 // SHMMNI tamanho máx de seg (kbytes) = 262144 // SHMMAX memória compartilhada total máx (kbytes) = 8388608 // SHMALL tamanho mínimo de segmento (bytes) = 1 ------ Limites de Semáforo -------- número máximo de matrizes = 1024 // SEMMNI máximo de semáforos por matriz = 250 amplitude do sistema de semáforos máx = 256000 máximo de opções por chamada de semáforo= 32 valor máximo de semáforos = 32767 ------ Mensagens: Limites -------- largura máxima do sistema de filas = 1024 // MSGMNI tamanho máx da mensagem (bytes) = 65535 // MSGMAX tamanho padrão máx da fila (bytes) = 16384 // MSGMNB em que max semaphores system wide = max number of arrays x max semaphores/array Para kernels Linux de 32 bits, modifique os parâmetros de kernel, incluindo as seguintes entradas para o arquivo de configuração do controle do sistema padrão, /etc/sysctl.conf: kernel.msgmni = 1024 kernel.sem = "250 256000 32 1024" kernel.shmmax=268435456 Para kernels Linux de 64 bits, modifique os parâmetros de kernel, incluindo as seguintes entradas para o arquivo de configuração do controle do sistema padrão, /etc/sysctl.conf: kernel.msgmni = 1024 kernel.sem = "250 256000 32 1024" kernel.shmmax=1073741824 Execute sysctl com o parâmetro -p para carregar as definições sysctl, a partir do arquivo padrão /etc/sysctl.conf: sysctl -p As entradas do arquivo sysctl.conf são lidas durante a inicialização pelo script de inicialização da rede. Em algumas distribuições, pode ser requerido incluir sysctl -p em um dos arquivos de inicialização do sistema, como rc.local, para que os parâmetros do kernel sejam definidos depois de cada reinicialização. Modificando os Parâmetros do Kernel (Solaris Operating Environment) As informações a seguir são um anexo ao tópico "Modificando os Parâmetros de Kernel (Ambiente Operacional do Solaris)" no guia Iniciação Rápida para Servidores DB2: Para DB2 UDB (Universal Database) para operar apropriadamente, é recomendado atualizar os parâmetros de configuração do kernel do sistema. É possível utilizar o utilitário db2osconf para sugerir parâmetros de kernel recomendados. Para utilizar o comando db2osconf, é necessário primeiro instalar o DB2 UDB. O utilitário db2osconf pode ser executado apenas a partir de $DB2DIR/bin. Você deve iniciar novamente o sistema após modificar os parâmetros do kernel. Manual DB2 Universal Database Express Edition Versão 8.2 Basics Disponível para Download O IBM DB2 UDB Express (DB2 Universal Database Express) é o membro mais novo da família do produto DB2 Universal Database Versão 8. Combina o poder, funcionalidade e confiabilidade do premiado banco de dados relacional DB2 UDB da IBM com a simplicidade na embalagem, na instalação e na implementação, tudo isso com um custo de investimento mínimo para atender as necessidades de gerenciamento de dados de pequenas e médias empresas. O DB2 UDB Express foi projetado para clientes com habilidades mínimas em bancos de dados internos que precisam de um banco de dados de fácil instalação integrado às soluções de software do aplicativo. É uma versão multiusuário do DB2 UDB que suporta aplicativos locais e remotos em ambientes de LAN (Rede Local) e independentes. Para obter informações adicionais sobre DB2 UDB Express, faça download de Iniciação Rápida para o DB2 Express Edition e DB2 Universal Database Express Edition Version 8.2 Basics da página da Web de manuais do produto DB2 UDB em http://www.ibm.com/software/data/db2/udb/support/manualsv8.html Verificando se Seus Bancos de Dados Estão Prontos para Migração A seção de pré-requisitos a seguir está documentada na versão 8.2 do tópico que explica como verificar se seus bancos de dados estão prontos para migração: Pré-requisitos Certifique-se de que o arquivo migration.log, encontrado no diretório pessoal do proprietário da instância, contenha o seguinte texto: Versão de DB2CKMIG sendo executada: VERSÃO 8. Este pré-requisito é de fato uma etapa pós-migração executada no final do procedimento. Certificação de Common Criteria para o DB2 UDB As informações de autoridade para configurações do DB2 UDB que foram certificadas para o Common Criteria podem ser encontradas em http://niap.nist.gov/cc-scheme Spatial Extender Verificando a Instalação do Spatial Extender O programa de amostra runGseDemo pode ser utilizado para familiarização com a programação de aplicativos para o DB2 Spatial Extender. Para obter uma descrição das etapas que o programa de amostra executa para criar um banco de dados ativado espacialmente e executar análise espacial nos dados nesse banco de dados, consulte o tópico denominado "O programa de amostra do DB2 Spatial Extender". Este tópico está no Centro de Informações e no Spatial Extender and Geodetic Extender User's Guide and Reference. O DB2 Spatial Extender fornece outro programa de amostra, seBankDemoRunBankDemo, que demonstra como incluir recursos espaciais em um sistema de informações existente. Para obter informações adicionais sobre os dois programas de amostra, consulte os arquivos LEIA-ME nos seguintes diretórios: Windows ~\sqllib\samples\spatial ~\sqllib\samples\spatial\bank Linux e UNIX ~/sqllib/spatial ~/sqllib/spatial/bank Rotinas SQL Administrativas Nome da Coluna Incorreto Documentado no Conjunto de Resultados para a Função de Tabela SNAP_GET_DYN_SQL O tópico "Função de Tabela SNAP_GET_DYN_SQL" no DB2 Information Center Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9) documenta incorretamente o conjunto de resultados para a função de tabela SNAP_GET_DYN_SQL. Uma das colunas está documentada incorretamente como STMT_TXT. O nome correto para a coluna de saída é STMT_TEXT. As Funções de Tabela de Monitoramento de Capturas Instantâneas Possuem Visualizações Específicas à Versão As visualizações específicas à versão foram definidas nas seguintes funções de tabela de monitoramento de capturas instantâneas, introduzidas no DB2 Universal Database Versão 8.2.2 (equivalente à Versão 8.1 FixPak 9): * SNAP_GET_CONTAINER * SNAP_GET_DB * SNAP_GET_DYN_SQL * SNAP_GET_STO_PATHS * SNAP_GET_TAB * SNAP_GET_TBSP * SNAP_GET_TBSP_PART As visualizações específicas à versão são as seguintes: * SYSCATV82.SNAPCONT * SYSCATV82.SNAPDB * SYSCATV82.SNAPDYNSQL * SYSCATV82.SNAPSTOPATHS * SYSCATV82.SNAPTAB * SYSCATV82.SNAPTBSPACE * SYSCATV82.SNAPTBSPACEPART Como não há garantia de que as tabelas de resultados das funções de tabela de monitoração de capturas instantâneas permanecerão inalteradas de release a release, é recomendado utilizar as visualizações específicas à versão, se desejar garantir as tabelas de resultados. Cada visualização contém todas as colunas da tabela de resultados da função de tabela de monitoração de capturas instantâneas associada. O Procedimento GET_DB_CONFIG Requer um Tamanho Mínimo de Página de 8 K para um Espaço de Tabelas Temporário do Usuário O procedimento GET_DB_CONFIG requer um espaço de tabelas temporário do usuário com um tamanho da página de, pelo menos, 8 K. O exemplo documentado, que mostra como utilizar o procedimento GET_DB_CONFIG, deveria ser substituído pelo exemplo seguinte. Utilizando o CLP (Command Line Processor), altere o valor dos parâmetros de configuração do banco de dados logretain e userexit. Recupere o valores originais (no disco) e atualizados (na memória), chamando o procedimento GET_DB_CONFIG. UPDATE DB CFG USING LOGRETAIN RECOVERY USEREXIT YES CALL SYSPROC.GET_DB_CONFIG() A seguir há um exemplo de saída parcial dessa chamada de procedimento. Conjunto de resultados 1 -------------- DBCONFIG_TYPE ... LOGRETAIN ... USEREXIT... ------------- ----------- ----------- 0 1 1 1 0 0 2 record(s) selected. Return Status = 0 Referência ao SQL Autorizações da Instrução CREATE PROCEDURE (SQL) Se o ID de autorização da instrução tiver autoridade SYSADM mas não autoridade DBADM, esse ID concederá autoridade DBADM implícita com a finalidade de criar o procedimento. Isso aplica-se à instrução CREATE PROCEDURE (SQL) e não à instrução CREATE PROCEDURE (Externa). EXPLAIN_DIAGNOSTIC: Uma Nova Tabela Explain A tabela EXPLAIN_DIAGNOSTIC contém uma entrada para cada mensagem de diagnóstico produzida para uma instância particular de uma instrução explicada na tabela EXPLAIN_STATEMENT. A função de tabela EXPLAIN_GET_MSGS consulta as tabelas Explain EXPLAIN_DIAGNOSTIC e EXPLAIN_DIAGNOSTIC_DATA e retorna as mensagens formatadas. Tabela 39. Tabela EXPLAIN_DIAGNOSTIC Nome da | Tipo de | Anul | Cha | Descrição Coluna | Dados | ável | ve | | | | 1 | --------------+----------+------+-----+------------------------------ EXPLAIN_REQU | VARCHAR( | Não | PK, | ID de autorização do ESTER | 128) | | FK | iniciador do pedido Explain. --------------+----------+------+-----+------------------------------ EXPLAIN_TIME | TIMESTAM | Não | PK, | Tempo de inicialização para | P | | FK | o pedido Explain. --------------+----------+------+-----+------------------------------ SOURCE_NAME | VARCHAR( | Não | PK, | Nome do pacote em execução | 128) | | FK | ao explicar a instrução | | | | dinâmica ou nome do arquivo | | | | de origem ao explicar o SQL | | | | estático. --------------+----------+------+-----+------------------------------ SOURCE_SCHEM | VARCHAR( | Não | PK, | Esquema ou qualificador da A | 128) | | FK | origem do pedido Explain. --------------+----------+------+-----+------------------------------ SOURCE_VERSI | VARCHAR( | Não | PK, | Versão da origem do pedido ON | 64) | | FK | Explain. --------------+----------+------+-----+------------------------------ EXPLAIN_LEVE | CHAR(1) | Não | PK, | Nível de informações do L | | | FK | Explain para o qual essa | | | | linha é relevante. | | | | Valores válidos são: | | | | * O: Texto Original (como | | | | digitado pelo usuário) | | | | * P: PLAN SELECTION --------------+----------+------+-----+------------------------------ STMTNO | INTEGER | Não | PK, | O número da instrução no | | | FK | pacote ao qual essas | | | | informações do Explain estão | | | | relacionadas. Defina como 1 | | | | para as instruções Explain | | | | SQL dinâmicas. Para as | | | | instruções SQL estáticas, | | | | esse valor é o mesmo do | | | | valor utilizado para a | | | | visualização do catálogo | | | | SYSCAT.STATEMENTS. --------------+----------+------+-----+------------------------------ SECTNO | INTEGER | Não | PK, | O número da seção no pacote | | | FK | que contém essa instrução | | | | SQL. Para as instruções | | | | Explain SQL dinâmicas, esse | | | | é o número da seção | | | | utilizado para manter a | | | | seção para essa instrução no | | | | tempo de execução. Para as | | | | instruções SQL estáticas, | | | | esse valor é o mesmo do | | | | valor utilizado para a | | | | visualização do catálogo | | | | SYSCAT.STATEMENTS. --------------+----------+------+-----+------------------------------ DIAGNOSTIC_I | INTEGER | Não | PK | ID do diagnóstico para um D | | | | instância particular de uma | | | | instrução na tabela | | | | EXPLAIN_STATEMENT. --------------+----------+------+-----+------------------------------ CODE | INTEGER | Não | Não | Um número exclusivo | | | | designado para cada mensagem | | | | de diagnóstico. O número | | | | pode ser utilizado por uma | | | | API de mensagem para | | | | recuperar o texto completo | | | | da mensagem de diagnóstico. 1. PK significa que a coluna é parte de uma chave primária; FK significa que a coluna é parte de uma chave estrangeira. EXPLAIN_DIAGNOSTIC_DATA: Uma Nova Tabela Explain A tabela EXPLAIN_DIAGNOSTIC_DATA contém símbolos de mensagem para mensagem de diagnóstico específica, registrados na tabela EXPLAIN_DIAGNOSTIC. Os símbolos de mensagem fornecem informações adicionais, especificadas para a execução da instrução SQL que gera a mensagem. A função de tabela EXPLAIN_GET_MSGS consulta as tabelas Explain EXPLAIN_DIAGNOSTIC e EXPLAIN_DIAGNOSTIC_DATA e retorna as mensagens formatadas. Tabela 40. Tabela EXPLAIN_DIAGNOSTIC_DATA Nome da | Tipo de | Anul | Cha | Descrição Coluna | Dados | ável | ve | | | | 1 | --------------+----------+------+-----+------------------------------ EXPLAIN_REQU | VARCHAR( | Não | FK | ID de autorização do ESTER | 128) | | | iniciador do pedido Explain. --------------+----------+------+-----+------------------------------ EXPLAIN_TIME | TIMESTAM | Não | FK | Tempo de inicialização para | P | | | o pedido Explain. --------------+----------+------+-----+------------------------------ SOURCE_NAME | VARCHAR( | Não | FK | Nome do pacote em execução | 128) | | | ao explicar a instrução | | | | dinâmica ou nome do arquivo | | | | de origem ao explicar o SQL | | | | estático. --------------+----------+------+-----+------------------------------ SOURCE_SCHEM | VARCHAR( | Não | FK | Esquema ou qualificador da A | 128) | | | origem do pedido Explain. --------------+----------+------+-----+------------------------------ SOURCE_VERSI | VARCHAR( | Não | FK | Versão da origem do pedido ON | 64) | | | Explain. --------------+----------+------+-----+------------------------------ EXPLAIN_LEVE | CHAR(1) | Não | FK | Nível de informações do L | | | | Explain para o qual essa | | | | linha é relevante. | | | | Valores válidos são: | | | | * O: Texto Original (como | | | | digitado pelo usuário) | | | | * P: PLAN SELECTION --------------+----------+------+-----+------------------------------ STMTNO | INTEGER | Não | FK | O número da instrução no | | | | pacote ao qual essas | | | | informações do Explain estão | | | | relacionadas. Defina como 1 | | | | para as instruções Explain | | | | SQL dinâmicas. Para as | | | | instruções SQL estáticas, | | | | esse valor é o mesmo do | | | | valor utilizado para a | | | | visualização do catálogo | | | | SYSCAT.STATEMENTS. --------------+----------+------+-----+------------------------------ SECTNO | INTEGER | Não | FK | O número da seção no pacote | | | | que contém essa instrução | | | | SQL. Para as instruções | | | | Explain SQL dinâmicas, esse | | | | é o número da seção | | | | utilizado para manter a | | | | seção para essa instrução no | | | | tempo de execução. Para as | | | | instruções SQL estáticas, | | | | esse valor é o mesmo do | | | | valor utilizado para a | | | | visualização do catálogo | | | | SYSCAT.STATEMENTS. --------------+----------+------+-----+------------------------------ DIAGNOSTIC_I | INTEGER | Não | PK | ID do diagnóstico para um D | | | | instância particular de uma | | | | instrução na tabela | | | | EXPLAIN_STATEMENT. --------------+----------+------+-----+------------------------------ ORDINAL | INTEGER | Não | Não | Posição do símbolo no texto | | | | completo da mensagem. --------------+----------+------+-----+------------------------------ TOKEN | VARCHAR( | Sim | Não | Símbolo de mensagem a ser | 1000) | | | inserido no texto completo | | | | da; pode estar truncado. --------------+----------+------+-----+------------------------------ TOKEN_LONG | BLOB(3M) | Sim | Não | Informações mais detalhadas, | | | | se disponíveis. 1. PK significa que a coluna é parte de uma chave primária; FK significa que a coluna é parte de uma chave estrangeira. Esquema Utilizado pelo Recurso de Explicação O recurso Explain utiliza os seguintes IDs como o esquema, ao qualificar as tabelas Explain que são populadas: * O ID de autorização de sessão para SQL dinâmico * O ID de autorização de instrução para SQL estático O esquema pode ser associado a um conjunto de tabelas Explain ou a aliases que apontam para um conjunto de tabelas Explain em um esquema diferente. Se não forem encontradas tabelas Explain no esquema, o recurso Explain procurará tabelas Explain no esquema SYSTOOLS e tentará utilizá-las. Representações de Cadeias de Valores Datetime Cadeias de Horas Uma representação de cadeia de uma hora é uma cadeia que começa com um dígito e possui comprimento de pelo menos 4 caracteres. Podem ser incluídos espaços finais; um zero inicial pode ser omitido da parte de hora da hora e os segundos podem ser totalmente omitidos. Se os segundos forem omitidos, será assumida uma especificação implícita de 0 segundos. Assim, 13h30 é equivalente a 13:30:00. Os formatos de cadeias válidos para horas estão listados na tabela a seguir. Cada formato é identificado por nome e abreviação associada. Tabela 41. Formatos de Representações de Cadeias de Horas +---------------------------+-------------+-------------+-------------+ | Nome do Formato | Abreviação | Formato de | Exemplo | | | | Hora | | +---------------------------+-------------+-------------+-------------+ | International Standards | ISO | hh.mm.ss | 13.30.05 | | Organization | | | | +---------------------------+-------------+-------------+-------------+ | Padrão IBM EUA | EUA | hh:mm AM ou | 1:30 PM | | | | PM | | +---------------------------+-------------+-------------+-------------+ | Padrão Europeu IBM | EUR | hh.mm.ss | 13.30.05 | +---------------------------+-------------+-------------+-------------+ | Era Cristã do Japanese | JIS | hh:mm:ss | 13:30:05 | | Industrial Standard | | | | +---------------------------+-------------+-------------+-------------+ | Definido pelo Site | LOC | Depende do | - | | | | código de | | | | | território | | | | | do | | | | | aplicativo | | +---------------------------+-------------+-------------+-------------+ Começando com a Versão 8.2, "AM" e "PM" podem ser representados em minúsculas ou maiúsculas. Monitor do Sistema Resumo de Indicadores de Funcionamento No tópico "Resumo dos Indicadores de Funcionamento" na Versão 8.2.2 do DB2 Information Center (equivalente à Versão 8.1 FixPak 9), o identificador para o indicador de funcionamento de utilização de armazenamento automático do banco de dados está documentado incorretamente como db.db_auto_storage_util. O identificador correto para esse Indicador de Funcionamento da Utilização de Armazenamento Automático do Banco de Dados é db.auto_storage_util. Lista de Aplicativos Desacoplados sem o Concentrador de Conexões Ativado E possível ver aplicativos desacoplados ao emitir o comando listar aplicativos, mesmo sem ativar o concentrador de conexão. Monitoramento de Progresso do Processo de Rollback do Tempo de Execução O monitoramento do progresso de rollback de tempo de execução fornece informações de progresso de eventos de rollback utilizando capturas instantâneas de aplicativos. Os eventos de rollback são de dois tipos: Rollback de Unidade de Trabalho Inclui rollback explícito (chamado pelo usuário) e implícito (forçado) de toda a transação. Rollback do Ponto de Salvamento Inclui pontos de salvamento de nível de instrução e de aplicativo. Os pontos de salvamento aninhados são considerados uma única entrada, utilizando o ponto de salvamento mais externo. As informações fornecidas são a hora de início do evento de rollback, o trabalho total a ser feito e o trabalho concluído. A métrica do trabalho são bytes. As Unidades de Trabalho totais estão no intervalo no fluxo de registros que precisa ser revertido para transação ou ponto de salvamento. As Unidades de Trabalho concluídas mostram a posição relativa no fluxo de registros que foi revertido. As atualizações do Trabalho Concluído são feitas após o processamento de cada registro de log. As atualizações não são executadas uniformemente, porque os registros de log variam de tamanho. Saída de Amostra do Comando GET SNAPSHOT FOR ALL APPLICATIONS Application Snapshot Application handle = 6 Application status = Rollback Active Start Time = 02/20/2004 12:49:27.713720 Completed Work = 1024000 bytes Total Work = 4084000 bytes Application Snapshot Application handle = 10 Application status = Rollback to Savepoint Start Time = 02/20/2004 12:49:32.832410 Completed Work = 102400 bytes Total Work = 2048000 bytes Nota: Se o rollback não estiver ativo durante uma captura instantânea, os elementos de rollback não serão exibidos. XML Extender Alteração de Parâmetro para Procedimentos Armazenados dxxGenXML, dxxGenXMLClob, dxxRetrieveXML e dxxRetrieveXMLClob A descrição do parâmetro override para os procedimentos armazenados a seguir foi alterado: * dxxGenXML() * dxxGenXMLClob() * dxxRetrieveXML() * dxxRetrieveXMLClob() A atualização é como segue: Parâmetros Tabela 42. Substituição de Parâmetros para os Procedimentos Armazenados dxxGenXML, dxxGenXMLClob, dxxRetrieveXML e dxxRetrieveXMLClob +-----------+--------------------------------------------+------------+ | Parâmetro | Descrição | Parâmetro | | | | IN/OUT | +-----------+--------------------------------------------+------------+ | override | Substitui a condição no arquivo DAD. O | IN | | | valor de entrada é baseado no | | | | overrideType. | | | | * NO_OVERRIDE: Uma string NULL. | | | | * SQL_OVERRIDE: Uma instrução SQL válida. | | | | A utilização do overrideType requer que o | | | | mapeamento SQL seja utilizado no arquivo | | | | DAD. A instrução de entrada substitui o | | | | SQL_stmt no arquivo DAD. | | | | * XML_OVERRIDE: Uma string que contenha | | | | uma ou mais expressões que sejam separadas | | | | pela palavra AND. A utilização do | | | | overrideType requer que o mapeamento de | | | | RDB_node seja utilizado no arquivo DAD. | | +-----------+--------------------------------------------+------------+ Decompondo Documentos XML em Dados do DB2 UDB Limites do Tamanho da Tabela de Decomposição A decomposição utiliza mapeamento de RDB_node para especificar como um documento XML é decomposto nas tabelas DB2 UDB, extraindo o os valores do elemento e do atributo e armazenando-os nas linhas da tabela. Os valores de cada documento XML são armazenados em uma ou mais tabelas DB2 UDB. Cada tabela pode ter um máximo de 10240 linhas decompostas de cada documento. Por exemplo, se um documento XML for decomposto em cinco tabelas, cada uma delas pode ter até 10240 linhas para cada documento particular. Se a tabela tiver linhas de documentos múltiplos, ela pode ter até 10240 linhas para cada documento. A utilização de elementos com ocorrência múltipla (elementos com caminhos locais que podem ocorrer mais de uma vez na estrutura XML) afeta o número de linhas. Por exemplo, um documento que contenha um elemento que ocorra 20 vezes, pode ser decomposto como 20 linhas na tabela. Ao utilizar elementos com ocorrência múltipla, considere que o máximo de 10240 linhas pode ser decomposto em uma tabela a partir de um documento único. Decompondo Documentos Maiores que 1 MB Não é necessário eliminar e recriar o procedimento armazenado dxxShredXML para decompor documentos maiores que 1 MB. Para decompor documentos maiores que 1 MB, chame o procedimento armazenado dxxShredXML100MB, que pode compartilhar documentos até 100 MB. Embora dxxShredXML100MB possa manipular documentos grandes, pode ser necessário ampliar outros recursos para que o procedimento armazenado seja concluído com êxito. Para chamar o procedimento armazenado através do programa de amostra dxxshrd, utilize o novo sinalizador "-large". Por exemplo: dxxshrd -large mydb xxx.xml Se sua versão do DB2 Universal Database for anterior à Versão 8 FixPak 6, será necessário executar dxxMigv para migrar o XML Extender para o nível atual para executar o novo procedimento armazenado. Configurando UDFs XML do MQ com o XML Extender Você deve configurar e ativar UDFs (User-Defined Functions) XML do MQ antes de utilizá-las. Pré-requisitos Instale os UDFs seguindo o procedimento no tópico "Instalando funções do DB2 WebSphere MQ", que é encontrado no Centro de Informações ou no IBM DB2 Information Integrator Application Developer's Guide. Procedimento Para configurar e ativar UDFs XML do MQ com o XML Extender: 1. Abra uma janela do prompt de comandos do DB2. 2. Conecte-se ao banco de dados que utilizará as UDFs XML do MQ digitando o seguinte comando: db2 connect to 3. Mude para o diretório bnd no caminho em que foi instalado o DB2 Universal Database, como: * SQLLIB/bnd (Linux e UNIX) * C:\Arquivos de programas\IBM\SQLLIB\bnd (Windows) 4. Ligue o banco de dados ao XML Extender utilizando o seguinte comando: db2 bind @dbxxbind.lst 5. Ligue o banco de dados para o XML Extender utilizar as UDFs XML do MQ utilizando o seguinte comando: db2 bind mqxml.bnd 6. Ligue o banco de dados à CLI utilizando o seguinte comando: db2 bind @db2cli.lst Variável de Ambiente DB2DXX_MIN_TMPFILE_SIZE do XML Extender O DB2 XML Extender pode colocar documentos grandes em arquivos temporários para evitar utilizar uma grande quantidade de memória durante o processamento. Em sistemas com grandes quantidades de memória física, você pode evitar mover documentos para arquivos temporários, reduzindo a quantidade de atividade de Entrada/Saída. A variável de ambiente DB2DXX_MIN_TMPFILE_SIZE instrui o XML Extender a utilizar buffers de memória, em vez de arquivos temporários, para processar documentos menores do que o valor especificado. A variável é aplicável apenas no servidor. Se vários nós físicos participarem de um ambiente particionado, a variável poderá ser definida de forma diferente em cada nó, refletindo com precisão a quantidade de memória instalada em cada computador. Se a variável de ambiente não estiver definida, documentos com mais de 128 KB serão colocados automaticamente nos arquivos temporários durante o processamento. Documentos com menos de 128 KB serão processados na memória. Redefinição de UDT DB2XML.XMLVarchar Você pode redefinir o UDT (User-Defined Type) DB2XML.XMLVarchar até 32 KB. Para alterar o tamanho de um UDT XMLVarchar, crie o UDT antes de ativar o banco de dados para o XML Extender. Para obter informações adicionais, consulte DB2 XML Extender Administration and Programming. Apêndice A. Estrutura do Diretório de CD do FixPak do DB2 UDB Sistemas Operacionais Windows Os arquivos no CD do FixPak estão localizados da seguinte forma: Tabela 43. Arquivos Windows +------------------+--------------------------------------------------+ | Arquivos | Localização | +------------------+--------------------------------------------------+ | Arquivos do | x:\db2 | | produto DB2: | | +------------------+--------------------------------------------------+ | Pré-requisitos | x:\doc\\install.txt | | de Instalação: | | +------------------+--------------------------------------------------+ | Pré-requisitos | x:\doc\\install.htm | | de Instalação | | | (HTML): | | +------------------+--------------------------------------------------+ | Arquivos de | x:\db2\license | | Licença: | | +------------------+--------------------------------------------------+ | Notas sobre o | x:\doc\\release.txt | | Release: | | +------------------+--------------------------------------------------+ | Notas sobre o | x:\doc\\db2ir\index.htm | | Release (HTML): | | +------------------+--------------------------------------------------+ em que: * x: refere-se à sua unidade de CD * refere-se ao diretório do idioma, que consiste em um código de cinco caracteres que corresponde a um dos idiomas em Tabela 45 Sistemas Operacionais UNIX Os arquivos no CD do FixPak estão localizados da seguinte forma Tabela 44. Arquivos UNIX +------------------+--------------------------------------------------+ | Arquivos | Localização | +------------------+--------------------------------------------------+ | Arquivos do | /cdrom/db2 | | produto DB2: | | +------------------+--------------------------------------------------+ | Pré-requisitos | /cdrom/doc//install.txt | | de Instalação: | | +------------------+--------------------------------------------------+ | Pré-requisitos | /cdrom/doc//install.htm | | de Instalação | | | (HTML): | | +------------------+--------------------------------------------------+ | Arquivos de | /cdrom/db2/license | | Licença: | | +------------------+--------------------------------------------------+ | Notas sobre o | /cdrom/doc//release.txt | | Release: | | +------------------+--------------------------------------------------+ | Notas sobre o | /cdrom/doc//db2ir/index.htm | | Release (HTML): | | +------------------+--------------------------------------------------+ em que: * /cdrom refere-se ao ponto de montagem * refere-se ao diretório do idioma, que consiste em um código de cinco caracteres que corresponde a um dos idiomas em Tabela 45 A tabela a seguir descreve os nomes de diretórios de idiomas e seus idiomas correspondentes. Tabela 45. Nomes dos Diretórios e Seus Respectivos Idiomas +----------------+----------------------------------------------------+ | Diretório | Idioma | +----------------+----------------------------------------------------+ | ar_AA | Árabe | +----------------+----------------------------------------------------+ | bg_BG | Búlgaro | +----------------+----------------------------------------------------+ | cs_CZ | Tcheco | +----------------+----------------------------------------------------+ | da_DK | Dinamarquês | +----------------+----------------------------------------------------+ | de_DE | Alemão | +----------------+----------------------------------------------------+ | el_GR | Grego | +----------------+----------------------------------------------------+ | en_US | Inglês | +----------------+----------------------------------------------------+ | es_ES | Espanhol | +----------------+----------------------------------------------------+ | fi_FI | Finlandês | +----------------+----------------------------------------------------+ | fr_FR | Francês | +----------------+----------------------------------------------------+ | hr_HR | Croata | +----------------+----------------------------------------------------+ | hu_HU | Húngaro | +----------------+----------------------------------------------------+ | it_IT | Italiano | +----------------+----------------------------------------------------+ | iw_IL | Hebraico | +----------------+----------------------------------------------------+ | ja_JP | Japonês | +----------------+----------------------------------------------------+ | ko_KR | Coreano | +----------------+----------------------------------------------------+ | nl_NL | Holandês | +----------------+----------------------------------------------------+ | no_NO | Norueguês | +----------------+----------------------------------------------------+ | pl_PL | Polonês | +----------------+----------------------------------------------------+ | pt_BR | Português do Brasil | +----------------+----------------------------------------------------+ | pt_PT | Português | +----------------+----------------------------------------------------+ | ro_RO | Romeno | +----------------+----------------------------------------------------+ | ru_RU | Russo | +----------------+----------------------------------------------------+ | sk_SK | Eslovaco | +----------------+----------------------------------------------------+ | sl_SI | Esloveno | +----------------+----------------------------------------------------+ | sv_SE | Sueco | +----------------+----------------------------------------------------+ | tr_TR | Turco | +----------------+----------------------------------------------------+ | zh_CN | Chinês Simplificado | +----------------+----------------------------------------------------+ | zh_TW | Chinês Tradicional | +----------------+----------------------------------------------------+ Notas: 1. Os nomes dos diretórios podem aparecer em letras maiúsculas ou minúsculas, dependendo do seu sistema operacional. 2. Todos os diretórios listados acima podem não aparecer neste CD, já que nem todos os diretórios de idiomas estão disponíveis em todos os CDs. 3. A partir da Versão 8.2, as Notas de Instalação são uma seção nas Notas sobre o Release. Apêndice B. Entrando em Contato com a IBM Nos Estados Unidos, ligue para qualquer um dos seguintes números para entrar em contato com a IBM: * 1-800-IBM-SERV (1-800-426-7378) para atendimento ao cliente * 1-888-426-4343 para conhecer as opções de serviço disponíveis * 1-800-IBM-4YOU (426-4968) para Departamento de Marketing e Vendas do DB2 No Canadá, ligue para qualquer um dos seguintes números para entrar em contato com a IBM: * 1-800-IBM-SERV (1-800-426-7378) para atendimento ao cliente * 1-800-465-9600 para conhecer as opções de serviços disponíveis * 1-800-IBM-4YOU (1-800-426-4968) para o departamento de marketing e vendas do DB2 Para localizar um escritório da IBM em seu país ou região, acesse o Directory of Worldwide Contacts da IBM na Web, no endereço http://www.ibm.com/planetwide B.1 Informações sobre o Produto As informações relacionadas aos produtos DB2 Universal Database estão disponíveis por telefone ou através da World Wide Web no endereço http://www.ibm.com/software/data/db2/udb Este site contém as informações mais recentes sobre biblioteca técnica, pedidos de manuais, downloads de produtos, grupos de notícias, FixPaks, notícias e links para recursos da Web. Se você mora no Brasil, ligue para o Centro de Atendimento a Clientes: * 0-800-7014-262 para solicitar produtos ou obter informações gerais. Para obter informações sobre como entrar em contato com a IBM fora dos Estados Unidos, acesse a página Worldwide da IBM no endereço www.ibm.com/planetwide Apêndice C. Avisos É possível que a IBM não ofereça os produtos, serviços ou recursos discutidos nesta publicação em outros países. Consulte um representante IBM local para obter informações sobre produtos e serviços disponíveis atualmente em sua área. Qualquer referência a produtos, programas ou serviços IBM não significa que apenas produtos, programas ou serviços IBM possam ser utilizados. Qualquer produto, programa ou serviço funcionalmente equivalente, que não infrinja nenhum direito de propriedade intelectual da IBM ou outros direitos legalmente protegidos, poderá ser utilizado em substituição a este produto, programa ou serviço. Entretanto, a avaliação e verificação da operação de qualquer produto, programa ou serviço não-IBM são de responsabilidade do Cliente. A IBM pode ter patentes ou solicitações de patentes pendentes relativas a assuntos tratados nesta publicação. O fornecimento desta publicação não garante ao Cliente nenhum direito sobre tais patentes. Pedidos de licença devem ser enviados, por escrito, para: Gerência de Relações Comerciais e Industriais da IBM Brasil Av. Pasteur 138-146 Botafogo Rio de Janeiro - RJ CEP 22290-240 Para pedidos de licença relacionados a informações de DBCS (Conjunto de Caracteres de Byte Duplo), entre em contato com o Departamento de Propriedade Intelectual da IBM em seu país ou envie pedidos de licença, por escrito, para: IBM World Trade Asia Corporation Licensing 2-31 Roppongi 3-chome, Minato-ku Tokyo 106, Japan O parágrafo a seguir não se aplica a nenhum país/região em que tais disposições não estejam de acordo com a legislação local: A INTERNATIONAL BUSINESS MACHINES CORPORATION FORNECE ESTA PUBLICAÇÃO "NO ESTADO EM QUE SE ENCONTRA" SEM GARANTIA DE NENHUM TIPO, SEJA EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS NÃO SE LIMITANDO ÀS GARANTIAS IMPLÍCITAS DE NÃO-INFRAÇÃO, COMERCIALIZAÇÃO OU ADEQUAÇÃO A UM DETERMINADO PROPÓSITO. Alguns países não permitem a exclusão de garantias expressas ou implícitas em certas transações; portanto, essa disposição pode não se aplicar ao Cliente. Estas informações podem conter imprecisões técnicas ou erros tipográficos. Periodicamente, são feitas alterações nas informações aqui contidas; tais alterações serão incorporadas em futuras edições desta publicação. A IBM pode, a qualquer momento, aperfeiçoar e/ou alterar os produtos e/ou programas descritos nesta publicação. Referências nestas informações a Web sites não-IBM são fornecidas apenas por conveniência e não representam de forma alguma um endosso a esses Web sites. Os materiais contidos nesses Web sites não fazem parte dos materiais desse produto IBM e a utilização desses Web sites é de inteira responsabilidade do Cliente. A IBM pode utilizar ou distribuir as informações fornecidas da forma que julgar apropriada sem incorrer em qualquer obrigação para com o Cliente. Licenciados deste programa que desejam obter informações sobre este assunto com objetivo de permitir: (i) a troca de informações entre programas criados independentemente e outros programas (incluindo este) e (ii) a utilização mútua das informações trocadas, devem entrar em contato com: Gerência de Relações Comerciais e Industriais da IBM Brasil Av. Pasteur, 138-146 Botafogo Rio de Janeiro, RJ CEP: 22290-240 Tais informações podem estar disponíveis, sujeitas a termos e condições apropriadas, incluindo em alguns casos o pagamento de uma taxa. O programa licenciado descrito nesta publicação e todo o material licenciado disponível são fornecidos pela IBM sob os termos do Contrato com o Cliente IBM, do Contrato de Licença de Programa Internacional IBM ou de qualquer outro contrato equivalente. Os dados de desempenho aqui contidos foram determinados em um ambiente controlado. Portanto, os resultados obtidos em outros ambientes operacionais podem variar significativamente. Algumas medidas podem ter sido tomadas em sistemas de nível de desenvolvimento e não há garantia de que estas medidas serão iguais em sistemas geralmente disponíveis. Além disso, algumas medidas podem ter sido estimadas por extrapolação. Os resultados reais podem variar. Usuários deste documento devem verificar os dados aplicáveis para seu ambiente específico. As informações sobre produtos não-IBM foram obtidas junto aos fornecedores dos respectivos produtos, de seus anúncios publicados ou de outras fontes disponíveis publicamente. A IBM não testou estes produtos e não pode confirmar a precisão de seu desempenho, compatibilidade nem qualquer outra reivindicação relacionada a produtos não-IBM. Dúvidas sobre os recursos de produtos não-IBM devem ser encaminhadas diretamente a seus fornecedores. Todas as declarações relacionadas aos objetivos e intenções futuras da IBM estão sujeitas a alterações ou cancelamento sem aviso prévio e representam apenas metas e objetivos. Estas informações contêm exemplos de dados e relatórios utilizados nas operações diárias de negócios. Para ilustrá-los da forma mais completa possível, os exemplos podem incluir nomes de indivíduos, empresas, marcas e produtos. Todos estes nomes são fictícios e qualquer semelhança com nomes e endereços utilizados por uma empresa real é mera coincidência. LICENÇA DE DIREITOS AUTORAIS: Estas informações contêm programas de aplicativos de exemplo na linguagem fonte, ilustrando as técnicas de programação em diversas plataformas operacionais. O Cliente pode copiar, modificar e distribuir estes programas de exemplo sem a necessidade de pagar à IBM, com objetivos de desenvolvimento, utilização, marketing ou distribuição de programas aplicativos em conformidade com a interface de programação de aplicativo para a plataforma operacional para a qual os programas de exemplo são criados. Esses exemplos não foram testados completamente em todas as condições. Portanto, a IBM não pode garantir ou implicar a confiabilidade, manutenção ou função destes programas. Cada cópia ou parte destes programas de exemplo ou qualquer trabalho derivado deve incluir um aviso de direitos autorais com os dizeres: (C) (nome da sua empresa) (ano). Partes deste código são derivadas dos Programas de Exemplo da Corp. (C) Direitos Autorais IBM Corp. _digite o ano ou anos_. Todos os direitos reservados. C.1 Marcas Registradas Os termos a seguir são marcas registradas da International Business Machines Corporation nos Estados Unidos e/ou em outros países e foram utilizados em pelo menos um dos documentos da biblioteca de documentação do DB2 UDB. ACF/VTAM iSeries AISPO LAN Distance AIX MVS AIXwindows MVS/ESA AnyNet MVS/XA APPN Net.Data AS/400 NetView BookManager OS/390 C Set++ OS/400 C/370 PowerPC CICS pSeries Database 2 QBIC DataHub QMF DataJoiner RACF DataPropagator RISC System/6000 DataRefresher RS/6000 DB2 S/370 DB2 Connect SP DB2 Extenders SQL/400 DB2 OLAP Server SQL/DS DB2 Information Integrator System/370 DB2 Query Patroller System/390 DB2 Universal Database SystemView Distributed Relational Tivoli Database Architecture VisualAge DRDA VM/ESA eServer VSE/ESA Extended Services VTAM FFST WebExplorer First Failure Support Technology WebSphere IBM WIN-OS/2 IMS z/OS IMS/ESA zSeries Os termos a seguir são marcas ou marcas registradas de outras empresas e foram utilizados em pelo menos um dos documentos da biblioteca de documentação do DB2 UDB: Microsoft, Windows, Windows NT e o logotipo Windows são marcas registradas da Microsoft Corporation nos estados Unidos e/ou em outros países. Intel e Pentium são marcas registradas da Intel Corporation nos Estados Unidos e/ou em outros países. Java e todas as marcas registradas baseadas em Java são marcas registradas da Sun Microsystems, Inc. nos Estados Unidos e/ou em outros países. UNIX é uma marca registrada do The Open Group nos Estados Unidos e em outros países. Linux é uma marca registrada de Linus Torvalds nos Estados Unidos e/ou em outros países. Outros nomes de empresas, produtos e serviços podem ser marcas registradas ou marcas de serviço de terceiros.