Muitos vezes atuando em suporte/consultoria podemos encontrar 2 tipos de problemas:
- Performance
- Down System
Vamos descrever mais sobre esses assuntos, mas lembrem-se vou dar o caminho das pedras, o how-to depende de cada um aplicar o conhecimento..
Performance
-------------
No caso de performance a coisa pode estar tão ruim que não conseguimos executar nem um comando no prompt , muito menos uma query para acessar o catálogo.
Nestes casos podemos utilizar o comando onstat (Informix) ou db2pd (db2), estes trabalham de uma forma diferente das outras ferramentas, através da funçao shmat se atacham a shared memory e executam leituras direta nas estruturas em memória.
Imaginem um ambiente com multiplas instâncias, a qual segmento de memoria o comando irá atachar-se?
Durante o startup da instancia o engine define uma chave (SHMKEY) para o segmento e atrav'es desta chave o onstat/db2pd podem fazer o attach na shared memory.
Alias para saber qual o SHMKEY de cada segmento 'e so executar o comando IPCS (no caso em ambiente UNIX), e possivel relacionar o SHMID com a saida do comando onstat -g seg.
Exemplos:
No informix temos um comando para identificar a quantidade de comandos DML que foram submetidos em uma tabela:
onstat -g ppf --> (e necessario setar o parametro TBLSTATS 1)
No db2 temos um comando com a mesma funcionalidade.
db2pd -db dbname -tcbstats
Down-System
----------------
Agora sabemos que e possivel acessar a shared memory diretamente atrav'es dos comandos onstat/db2pd, mas em caso de Down-System como faremos diagnostico se o engine nao passa pelo startup?
Neste caso 'e necessario utilizar ferramentas com acesso direto ao disco, tais como oncheck (Informix) ou db2dart (Db2).
Para executar o dump de uma pagina no Informix:
oncheck -pP
Para visualizar o conteudo de pagina reservada:
oncheck -pr
Para executar o dump de uma pagina no Db2:
db2dart dbname /ddel
Para DBAS Informix que queiram treinar db2dart este link vai dar uma ajuda:
http://www-01.ibm.com/support/docview.wss?rs=71&uid=swg21244563
Lembre-se que para usar db2dart com DB2_KEYDATACHECK em uma tabela com compressão é necessário aplicar o APAR IY87739
http://www-01.ibm.com/support/docview.wss?uid=swg1IY87739
Alias o que e DB2_KEYDATACHECK?? Lembram-se do CCFLAGS no Informix, bom isto e assunto pra outro post.
Maiores informações sobre o db2pd estão no Information Center:http://publib.boulder.ibm.com/infocenter/db2luw/v9//index.jsp
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.