Compartilhando conhecimento com o mundo

Com tecnologia do Blogger.

Pesquisa

Download

Blogger Tricks

Blogger Themes

Visitas

Assuntos

2/19/2014

Utilitário Oncheck - Informix


O utilitário oncheck exibe informações sobre a configuração e uso de disco do banco de dados, como o número de páginas usadas para uma tabela, o conteúdo das páginas reservadas e o número de extensões em uma tabela. O utilitário oncheck pode detectar inconsistências nas estruturas do disco e pode reparar algumas dessas inconsistências.

Verificando as páginas reservadas

oncheck -cr - Este comando verifica a consistência das páginas reservados. As páginas reservadas são usados ​​para rastrear e controle de informações de configuração para toda a instância. Por exemplo, se os parâmetros utilizados ONCONFIG são armazenadas aqui. A execução deste comando irá geralmente levam muito pouco tempo se o motor estiver online. Se a instância não está sendo executado, o utilitário irá demorar um pouco para responder, uma vez que confirma o estado atual da instância antes de continuar. Este comando vai ter impacto no desempenho pouca ou nenhuma, quando executado em um servidor de produção.

Verificando as páginas reservadas, incluindo os logs lógico e físico

oncheck -cR - Executa as mesmas operações que a oncheck -cr, mas também verifica todas as páginas do logical-log e physical-log para a consistência. A opção oncheck -cr é consideravelmente mais rápido porque ele não verifica as páginas do log-file. Se você tiver alterado o valor de um parâmetro de configuração (seja através do ISA, onparams, onmonitor, onspaces, ou editando o arquivo de configuração), mas você ainda não tiver reinicializado memória compartilhada, o oncheck -cr e o oncheck -cR vão detectar a inconsistência e irão retornar uma mensagem de erro.

Verificando os extents

oncheck -ce - Este comando verifica a consistência das extensões dentro do servidor de banco de dados. Uma extensão é uma área contígua de disco que armazena dados, dados de índice ou dados blob para uma tabela específica. O utilitário oncheck garante que todas as extensões e espaço livre no servidor de banco de dados, correspondem às suas informações de controle associados. Este comando normalmente irá levar alguns minutos para executar. A quantidade exata de tempo é proporcional à quantidade de espaço em disco que é alocada para a instância do banco de dados. Este comando vai ter impacto no desempenho pouco (ou não) quando executado em um sistema de produção.

Verificando os catálogos de banco de dados

oncheck -cc - Este comando verifica a constância das tabelas do catálogo do sistema do qual há um conjunto para cada banco de dados dentro da instância. Essas tabelas armazenam dados essenciais sobre o banco de dados, tais como banco de dados de esquema. Este comando normalmente irá levar alguns minutos para executar; a quantidade precisa de tempo é proporcional ao número de bases de dados na instância. Este comando vai ter impacto no desempenho pouca ou nenhuma, quando executado em um sistema de produção.

Antes de executar oncheck -cc ou oncheck -pc, execute um UPDATE STATISTICS de instrução SQL para assegurar que uma verificação exata ocorra. Para conferir uma tabela, o oncheck compara cada tabela do catálogo do sistema para a sua entrada correspondente na tblspace.

Verificando os índices das tabela

oncheck -ci e o oncheck -cI são comandos para verificar a ordenação de valores-chave e da consistência das ligações horizontais e verticais do nó para todos os índices associados à tabela especificada.

oncheck -cI - Também verifica que o valor da chave ligada a um linha em um índice é o mesmo que o valor de chave na linha. A opção -cI não cruzar os dados em um índice funcional. Se você não especificar um índice, a opção verifica todos os índices. Se você não especificar uma tabela, a opção verifica todas as tabelas no banco de dados. As opções de reparação do mesmo ci estão disponíveis com o -cI. Se oncheck -ci ou oncheck -cI detecta inconsistências, ele solicita confirmação para reparar o índice que esta com problema. Se você especificar a opção (yes) -y, os índices são automaticamente reparados. Se você especificar a opção (não) -n, o problema é relatado, mas não reparados; não ocorre perguntar.

Verificando as linhas dos dados da TBLspace, incluindo bitmaps

oncheck -cd - Lê todas as páginas, exceto para blobpages e sbpages, da tblspace para o banco de dados especificado, a tabela, o fragmento, ou vários fragmentos( fragparts ), e verifica a consistência cada página. Este comando compara as entradas na página de bitmap para as páginas para verificar mapeamento.

Verificando as linhas de dados da TBLspace, incluindo bitmaps, páginas de lembrete e BLOBs

oncheck -cD - Executa as mesmas verificações que o comando oncheck -cd, e também verifica o header (cabeçalho) de cada blobpage para a consistência. O comando oncheck -cD não se compara o início time stamps armazenados na header (cabeçalho) com o fim da time stamps de tempo armazenados no final de um blobpage. Use o comando oncheck -cD -y para limpar grandes objetos simples órfãs nas blobspaces, que podem ocorrer depois de um rollback em vários arquivos de log. Se o banco de dados contém tabelas fragmentadas, mas nenhum fragmento for especificado, o comando verifica oncheck -cd todos os fragmentos da tabela. Se você não especificar uma tabela, o comando verifica todas as tabelas no banco de dados.

Verificando as partições de metadados

oncheck -cs - verifica as sbspaces.
oncheck -ps - Checa as sbspaces e as extensões.
oncheck -cS - Valida e exibe metadados de um sbspace.
oncheck -ps - Checa as sbspaces e extensões. Se você não especificar o nome sbspace, essa opção verifique todas as sbspaces.
oncheck -pS - Valida e exibe os metadados de um sbspace e também lista as extensões e informações de cabeçalho para smart large objects. Se você não especificar o nome da sbspace, todos os sbspaces serão verificada.

Mostrando as páginas reservadas

oncheck -pr - Executa as mesmas verificações que oncheck -cr e exibe as informações reservadas páginas.

Mostrando as páginas reservadas, incluindo os logs lógico e físico

oncheck -pR - Realiza as mesmas verificações que oncheck -cR, exibe as informações das páginas reservadas, e exibe informações detalhadas sobre as páginas de logical-log e o physical-log, marcando o início e o fim das páginas physical-log ativos. Se você tiver alterado o valor de um parâmetro de configuração (seja através do ISA ou editando o arquivo de configuração), mas você ainda não tiver reinicializado a memória compartilhada, oncheck -pr e oncheck -pR detectarão a inconsistência e retornam uma mensagem de erro.

Mostrando o relatório das extents

oncheck -pe - Executa as mesmas verificações do oncheck -ce e também exibe as informações do chunk e tblspace durante a verificação. As opções -ce -PE e também verificam as blobspaces, extensões smart-large-object e de os user-data com informações de metadados dos chunks e sbspace.

Exibindo o relatório do catálogo

oncheck -pc - Executa as mesmas verificações em tabelas de catálogo do sistema e também exibe as informações do catálogo do sistema igual ao oncheck -cc, incluindo o endereço físico, tipo de bloqueio utilizado, tamanho de linha, número de chaves, o uso de extenções, o número de páginas alocadas e usados, tblspace partNum e uso de índice para cada tabela.

Antes de executar oncheck -cc ou oncheck -pc, execute um UPDATE STATISTICS de instrução SQL para assegurar que uma verificação exata ocorra. Para conferir uma tabela, o oncheck compara cada tabela do catálogo do sistema para a sua entrada correspondente na tblspace.

Assim com o oncheck -cc este comando vai ter impacto no desempenho pouca ou nenhuma, quando executado em um sistema de produção.

Exibindo Informações dos Index

oncheck -pk - Executa as mesmas verificações que a oncheck ci e, além disso, apresenta os valores-chave para todos os índices na tabela especificada, pois os verifica.
oncheck -pK - Executa as mesmas cheques como a oncheck -cI e, além disso, apresenta os valores-chave e rowids, pois os verifica.
oncheck -pl - Executa as mesmas cheques como a oncheck -ci e exibe os valores-chave, mas verifica somente as páginas leaf-node index. Ele ignora as páginas root e as branch-node.
oncheck -pL - Executa as mesmas cheques como a oncheck -cI e exibe os valores-chave e rowids, mas verifica somente páginas de leaf-node index. Ele ignora as páginas root e as branch-node.

Exibindo as linhas em um formato hexadecimal - pd

oncheck -pd - Pega um banco de dados, uma tabela, um fragmento, um fragmento de partição (fragpart) e um rowid ou um número de uma tblspace específico da página lógica como entrada. Em todos os casos as informações de cabeçalho de página, o -pd mostra informações da page-header e exibe as linhas especificadas para o objeto de banco de dados (banco de dados, tabela, fragmento, rowid interna ou número da página) que você especificar em hexadecimal e formato ASCII. Nenhuma verificação de consistência é realizadas.

Display das linhas em formato hexadecimal - pD

oncheck -pD - Exibe a mesma informação que o oncheck -pd. Além disso, o oncheck -pD mostra valores armazenados em TEXT E BYTE armazenados nas tblspace ou informações de cabeçalho para OS large objects simples armazenados em um blobpage blobspace.

Exibindo o relatório da TBLspace

oncheck -pt - Mostra um relatório da tblspace para a tabela ou fragmento com o nome e o banco que você especificar, quando você executa o oncheck na linha de comando. O relatório contém informações gerais de alocação incluindo o tamanho máximo da linha, o número de chaves, o número de extensões, seus tamanhos, as páginas alocadas e usado por extensão, o valor de current serial, e a data em que a tabela foi criada. a impressões de saída para pt o tamanho da página do tblspace, o número de páginas (alocados, usados ​​e dados) em termos de páginas lógicas. O resultado desse comando mostra a lista de extensões dos campos e a lista o endereço físico para a entrada tblspace para a tabela e o endereço da primeira página do primeiro grau. A lista de extensão mostra o número de lógicas, bem como páginas físicas em cada ponto. Se você não especificar uma tabela, a opção exibe esta informação para todas as tabelas no banco de dados.

oncheck -pt e o oncheck -pT monstram um relatório da tblspace para uma tabela ou fragmento específico. A única diferença entre essas opções é que o oncheck -pT monstra mais informações do que oncheck -pt.

Exibindo o relatório de utilização de disco do TBLspace

oncheck -pT - Exibe um relatório das tblspace para uma determinada tabela ou fragmento cujo nome e banco de dados que você especificar quando você executar oncheck na linha de comando. O relatório contém informações de alocação geral, incluindo o tamanho máximo de linha, o número de chaves, o número de extensões, seus tamanhos, as páginas alocadas e usado por extensão, o valor atual de série, e a data em que a tabela foi criada. A-pt saída imprime o pagesize da tabela, o número de páginas (alocado, usados ​​e dados) em termos de páginas lógicas. Os campos Extents lista o endereço físico para a entrada tblspace tblspace para a tabela e o endereço da primeira página da primeira extensão. A lista de extensão mostra o número de páginas lógicas, bem como físico em cada ponto. Se você não especificar uma tabela, a opção exibe esta informação para todas as tabelas no banco de dados.

Mostrando o conteúdo de uma página lógica

O oncheck -pp - Oferece as seguintes variações de sintaxe:

Abaixo o comando oncheck -pp mostra o conteúdo de uma página lógica usando um número de tabela e o número de página lógica. Você também pode especificar um parâmetro opcional que especifica o número de páginas a serem visualizados.
oncheck -pp tblspc lpn (pages)
Abaixo o comando oncheck -pp apenas mostra o cabeçalho de uma página lógica usando um número de tabela e o número de página lógica.
oncheck -pp tblspc lpn -h
Abaixo o comando oncheck -pp mostra o conteúdo de uma página lógica utilizando um nome de banco de dados, nome da tabela, e um rowid interno do Informix. Você pode obter este rowid interna com o comando oncheck-PD. Este rowid interno não é o rowid de série que é atribuído em tabelas criadas com o tabname CREATE TABLE COM declaração rowids.
oncheck -pp database:table rowid
Mostrando o conteúdo de uma página lógica para um número de chunk e o número de página especificada

oncheck -pP tem as seguintes variações de sintaxe:

Exibe o conteúdo de uma página lógica usando um número de bloco e um offset. Você também pode especificar um parâmetro opcional que especifica o número de páginas a serem impressas.
oncheck -pP chunk# offset pages
Exibe apenas o cabeçalho de uma página lógica usando um número de bloco e um offset.
oncheck -pP chunk# offset -h

Mostrando a utilização do BLOBspace

oncheck -pB - Exibe estatísticas que descrevem uma media na blobpages blobspace em uma tabela especificada. Estas estatísticas fornecem uma medida de eficiência de armazenamento para large objects simples individuais em um banco de dados ou tabela. Se você não especificar uma tabela ou fragmento, a opção exibe estatísticas para todo o banco.

Ativando o Lock com -x

A opção-x pode ser anexado as opções -ci, -cI, -pk, -pK, -pl, e -pL para colocar um shared lock em tabelas afetadas. Enquanto a tabela está bloqueada, nenhum outro usuário pode executar inserções, atualizações e deleções, enquanto verifica oncheck ou imprime o índice. Sem a opção-x para tabelas com bloqueio de linha, oncheck apenas coloca um IS (intenção compartilhada) de bloqueio na tabela, o que impede ações como derrubar a mesa ou os índices durante a verificação.

Por exemplo, o comando de exemplo a seguir instrui oncheck para bloquear os índices da tabela do cliente enquanto ele valida a ordem dos valores-chave, valida as ligações horizontais, e garante que nenhum nó aparece duas vezes no índice.

Sintaxe dos Comandos

Abaixo estão as sintaxes dos comandos oncheck;
 >>-oncheck------------------------------------------------------>

>--+-+- -ce-+-------------------------------------------------------------------+-->
   | +- -pe-+                                                                   |   
   | +- -cr-+                                                                   |   
   | +- -pr-+                                                                   |   
   | +- -cR-+                                                                   |   
   | '- -pR-'                                                                   |   
   +-+- -ci-+--+-----+--database--+---------------------------------------+-----+   
   | +- -cl-+  '- -x-'            '-:--+--------+--table--+-------------+-'     |   
   | +- -pk-+                          '-owner.-'         '-#index_name-'       |   
   | +- -pK-+                                                                   |   
   | +- -pl-+                                                                   |   
   | '- -pL-'                                                                   |   
   +-+- -cd-+--database--+---------------------------------------+--------------+   
   | '- -cD-'            '-:--+--------+--table--+-------------+-'              |   
   |                          '-owner.-'         +-,frag_dbs---+                |   
   |                                             '-,%frag_part-'                |   
   +-+- -cc-+--+----------+-----------------------------------------------------+   
   | '- -pc-'  '-database-'                                                     |   
   +-+- -pB-+--database--+-------------------------------------+----------------+   
   | +- -pt-+            '-:--+--------+--table--+-----------+-'                |   
   | '- -pT-'                 '-owner.-'         '-,frag_dbs-'                  |   
   +-+- -pd-+--+-database--+------------------------------------------------+-+-+   
   | '- -pD-'  |           '-:--+--------+--table--+-----------+--+-------+-' | |   
   |           |                '-owner.-'         '-,frag_dbs-'  '-rowid-'   | |   
   |           '-tblspacenum--+-----------------+-----------------------------' |   
   |                          '-logical pagenum-'                               |   
   +- -pp--+-database--:--+--------+--table--+-----------+--rowid-+-------------+   
   |       |              '-owner.-'         '-,frag_dbs-'        |             |   
   |       '-tblspacenum--logical pagenum-------------------------'             |   
   +- -pP--chunknum--logical pagenum--------------------------------------------+   
   +-+- -cs-+--+---------+------------------------------------------------------+   
   | '- -cS-'  '-sbspace-'                                                      |   
   +-+- -ps-+--+---------------------------+------------------------------------+   
   | '- -pS-'  '-sbspace--partnum--pagenum-'                                    |   
   +- -u--option--+------------------+------------------------------------------+   
   |              '-(--arg_string--)-'                                          |   
   '-+-----------+--------------------------------------------------------------'   
     +- -V-------+                                                                  
     '- -version-'                                                                  

>--+-----+--+-----+--------------------------------------------><
   +- -n-+  '- -q-'   
   '- -y-'      
Oncheck quando o servidor está off-line

Os comandos de oncheck que podem ser executados quando o servidor está off-line.
oncheck -pr - Exibe as informações de página reservada à medida que verifica as páginas reservadas
oncheck -cr - Verifica cada uma das páginas reservadas de dbspace raiz com relação a várias condições
oncheck -pP - Exibe o conteúdo de uma página, exige um número de chunk e um número de página
oncheck -pp - Exibe o conteúdo de uma página lógica, exige um número TBLspace (número de partição) e um número de página
Por exemplo, o comando $ oncheck -pp 0x200560 3 gera os resultados quando o banco esta off-line;
oncheck -pp 0x200560 3

shared memory not initialized for INFORMIXSERVER 'ids1170uc1shm'
addr             stamp    chksum nslots flag type  frptr frcnt next   prev
2:253535         13554146 f72    12     801  DATA  1563  433   0      0

        slot ptr   len   flg
        1    24    127   0
        2    151   128   0
        3    279   128   0
        4    407   128   0
        5    535   128   0
        6    663   126   0
        7    789   126   0
        8    915   127   0
        9    1042  129   0
        10   1171  129   0
        11   1300  132   0
        12   1432  131   0
slot   1:
    0:  9 73 79 73 74 61 62 6c 65 73 69 6e 66 6f 72 6d   .systablesinform
   16: 69 78 20 20 20 20 20 20 20 20 20 20 20 20 20 20   ix
   32: 20 20 20 20 20 20 20 20 20 20  0 20  5 60  0  0             . .`..
   48:  0  1  1 f4  0 1a  0  2  0  0  0  0  0 40 50 40   ...t.........@P@
.......

0 comentários:

Enviar um comentário