A idéia desse artigo é mostrar para vocês uma outra maneira interessante de coletar informações sobre sua instância e seus bancos de dados. O DB2 tem uma série de utilitários importantes que te ajudam nessa missão, mas o enfoque é utilizar essa “feature” que foi englobada ao DB2 a partir da versão 9 do produto.
Com essas informações podemos montar ótimos relatórios, além de que se bem aproveitadas temos informações históricas, capacity planing e uma boa “arma” para monitorar o banco de dados.
Como fazemos para listar essas views? Simples! Abaixo vamos mostrar o processo.
1) VAMOS LISTAR NOSSOS BANCOS DE DADOS PRIMEIRO COM O COMANDO DB2 LIST DB DIRECTORY
.
2) VAMOS CONECTAR NO NOSSO BANCO DE DADOS COM O COMANDO DB2 CONNECT TO <DATABASE NAME>.
Nesse caso estou utilizando o DB2 9.7 com seu último fix pack. As novas versões do DB2 (10.1 e 10.5) englobam novas views administrativas.
3) DEPOIS DE CONECTADO NO BANCO DE DADOS VAMOS LISTAR AS VIEWS COM O COMANDO DB2 LIST TABLES FOR SCHEMA SYSIBMADM. NESTE CASO ABAIXO VOU UTILIZAR O COMANDO MORE PARA LISTAR AOS POUCOS.
Uma outra forma de trazer o nome dessas views é fazendo um select na SYSCAT.TABLES
com o comando: db2 "select substr(tabname,1,40) as table_name from syscat.tables where tabschema = 'SYSIBMADM'"
4) DEPOIS DE LISTA-LAS, PRECISAMOS VER O CONTEÚDO DE CADA VIEW. ISSO É POSSÍVEL COM O COMANDO DB2 “DESCRIBE TABLE SYSIBMADM.<NOME DA VIEW/TABELA>”
Cada view tem uma série de colunas que trazem informações importantes. Quando usamos no nosso dia a dia já sabemos o que buscar e aonde buscar
Depois de passar pra vocês um overview básico de como listar e etc, agora vamos dar alguns exemplos do nosso dia a dia utilizando essas views.
- Se precisamos de informações de backup, podemos utilizar a
SYSIBMADM.DB_HISTORY
. No exemplo abaixo estou listando os backups de 1 mês:
- Quer saber quais são as 10 tabelas maiores, podemos utilizar a
SYSIBMADM.ADMINTABINFO
.
- Quer saber se existe alguma operação de reorg em stop, pause ou completo. Utilize a SYSIBMADM.SNAPTAB_REORG. Com ela conseguimos trazer em qual fase está o reorg também.
- Como saber o tamanho dos meu containers e com isso mensurar uma taxa de crescimento. Podemos utilizar a
SYSIBMADM.CONTAINER_UTILIZATION
.
- Para saber a quantidade de logs archives (LOGARCMETH1) gerados em 1 mês, também podemos utilizar a SYSIBMADM.DB_HISTORY.
Pessoal, as queries acima são exemplos de como podemos utilizar de maneira dinâmica os dados. Essas views guardam os dados desde o último stop/start da instância.
Saiba mais em: http://public.dhe.ibm.com/ps/products/db2/info/vr105/pdf/en_US/DB2AdminRoutinesViews-db2are1050.pdf
Muito bom Rafael!
Parabéns pelo post!
Muito interessante.
Obrigado por compartilhar.
Muito Obrigado, me ajudou muito!
Parabens amigo pela ajuda !!! Abs