| Bellacosa Mainframe Db2 avançado para um sysprog |
🔥☕ DB2 COMMANDS AVANÇADOS NO IBM Z — O QUE ESSES COMANDOS REALMENTE REVELAM SOBRE A SAÚDE DO MAINFRAME 💾🚨
A tela que você mostrou agora já entra em um nível MUITO mais avançado do DB2 z/OS.
Aqui não estamos mais falando apenas de:
-DIS THREAD(*)
Agora estamos entrando no território de:
troubleshooting pesado,
análise recovery,
pending states,
advisory states,
limbo pages,
tablespaces problemáticas,
diagnóstico profundo de storage DB2.
Esses são comandos típicos de:
DBA senior,
Sysprog,
suporte de produção crítica,
recovery team,
performance specialists.
🔥 CMD 1 — O “RAIO-X GLOBAL” DAS DATABASES
Comando
-DIS DB(*) SP(*) RESTRICT LIMIT(*)
💾 O QUE ELE FAZ?
Esse comando:
percorre TODAS as databases,
mostra TODOS os spaces,
filtra objetos em estado RESTRICT,
sem limite de quantidade.
🧠 EXPLICAÇÃO DOS PARÂMETROS
| Parâmetro | Significado |
|---|---|
| DB(*) | Todas as databases |
| SP(*) | Todos os spaces |
| RESTRICT | Mostra objetos restritos |
| LIMIT(*) | Sem limite de retorno |
🚨 O QUE É RESTRICT?
Estados RESTRICT indicam:
objeto parcialmente indisponível,
utility incompleta,
recovery necessário,
inconsistência operacional.
💥 CENÁRIOS REAIS
Após falha de REORG
Você pode encontrar:
RESTRICT
indicando:
tablespace inconsistente.
Após falha LOAD
O objeto pode:
aceitar leitura,
mas bloquear update.
🔥 O QUE O SYSPOG PROCURA?
objetos presos,
utilities abandonadas,
estados recovery,
pendências ocultas.
🔥 CMD 2 — DISPLAY THREAD
Comando
-DIS THREAD(*)
💾 O COMANDO MAIS IMPORTANTE DO DB2
Esse comando mostra:
threads ativas,
conexões CICS,
batch,
TSO,
DDF,
waits,
CPU.
🚨 O QUE ANALISAR?
WAIT
Pode indicar:
lock,
I/O lento,
deadlock.
THREAD ZUMBI
Thread ativa sem progresso:
aplicação travada,
commit preso,
problema rede DDF.
THREAD MASSIVA
Uma única thread:
consumindo CPU absurda,
SQL ruim,
tablescan gigante.
🔥 CMD 3 — DISPLAY DATABASE OVERVIEW
Comando
-DISPLAY DATABASE(DSN8D13A) SPACE(*) OVERVIEW
💾 O QUE É OVERVIEW?
Mostra uma visão resumida:
status,
pendências,
utilities,
estados críticos.
Sem detalhar cada partição profundamente.
🎯 OBJETIVO
Obter diagnóstico rápido.
Muito usado em:
incidentes,
bridge call,
troubleshooting urgente.
💥 O QUE APARECE?
| Campo | Significado |
|---|---|
| RW | Read Write |
| RO | Read Only |
| STOP | Parado |
| UT | Utility |
| CHKP | Check Pending |
🚨 EXEMPLO REAL
Se aparecer:
UTRO
pode indicar:
utility rodando,
objeto somente leitura.
🔥 CMD 4 — LIST TABLESPACES SHOW DETAIL
Comando
-LIST TABLESPACES SHOW DETAIL
💾 O QUE ELE FAZ?
Lista:
tablespaces,
atributos,
detalhes físicos,
status internos.
🧠 INFORMAÇÕES IMPORTANTES
Pode mostrar:
DSSIZE,
PRIQTY,
SECQTY,
SEGSIZE,
bufferpool,
locksize,
partitioning.
🚨 MUITO USADO PARA
capacity planning,
tuning,
growth analysis,
storage troubleshooting.
💥 O DBA PROCURA
Tablespace gigante
Pode exigir:
reparticionamento,
compressão,
REORG.
Bufferpool inadequado
Pode gerar:
I/O excessivo,
CPU alta.
🔥 CMD 5 — DISPLAY DATABASE COM ADVISORY
Comando
-DISPLAY DATABASE(DSN8D13A) SPACENAM(*) LIMIT(*) ADVISORY(ARBDP,AREO*)
💾 ESSE É PESADO 😄
Aqui entramos em:
estados advisory.
🧠 O QUE É ADVISORY?
Não significa falha imediata.
Significa:
DB2 recomenda ação corretiva.
🚨 ARBDP
Advisory Rebuild Pending
Indica:
índice precisa rebuild.
Pode ocorrer:
após recover,
após falha,
inconsistência index.
🚨 AREO*
Advisory REORG Pending
O DB2 recomenda:
REORG
💥 POR QUE ISSO IMPORTA?
Mesmo funcionando:
performance degrada,
overflow aumenta,
access path piora,
CPU sobe.
🔥 SINTOMA CLÁSSICO
Aplicação:
“está ficando lenta”
DBA roda:
-DISPLAY DATABASE ... ADVISORY
e encontra:
AREO*
🔥 CMD 6 — DISPLAY DATABASE GLOBAL ADVISORY
Comando
-DISPLAY DATABASE(*) SPACENAM(*) LIMIT(*) ADVISORY
💾 O “CAÇA-PROBLEMAS” GLOBAL
Esse comando varre:
TODO o subsystem DB2.
🚨 O QUE ELE PROCURA?
AREO
ARBDP
RBDP
CHKP
COPY
pending states
💥 MUITO USADO EM:
health checks,
automação,
auditoria,
pré-manutenção,
pré-upgrade.
🔥 EM GRANDES BANCOS
Esse comando roda:
automaticamente,
várias vezes ao dia.
🔥 CMD 7 — LPL (Logical Page List)
Comando
-DISPLAY DATABASE(DSN8D13A) SPACENAM(*) LIMIT(*) LPL
💾 AGORA ENTRAMOS NO MODO “CIRURGIA CARDÍACA” 😄
LPL =
Logical Page List.
🚨 O QUE É LPL?
Lista páginas:
danificadas,
inconsistentes,
com problema recovery.
💥 COMO UMA PÁGINA ENTRA EM LPL?
falha I/O,
corrupção,
abend,
falha hardware,
escrita incompleta,
recover interrompido.
🚨 IMPACTO
Objetos em LPL:
podem ficar indisponíveis,
gerar SQLCODE,
causar abends,
travar aplicações.
🔥 O DBA PROCURA
Quantidade de páginas afetadas
Se poucas:
recover localizado.
Se muitas:
desastre potencial.
💣 COMANDOS ASSOCIADOS
Após detectar LPL:
Pode ser necessário:
-RECOVER
-START DB(...)
-STOP DB(...)
🔥 O QUE ESSA TELA ENSINA?
Essa tela é praticamente:
um mapa de sobrevivência do DB2.
Ela mostra:
diagnóstico,
recovery,
saúde,
inconsistência,
tuning,
pending states,
gargalos ocultos.
☕ A GRANDE VERDADE DO DB2 z/OS
O DB2 raramente “morre do nada”.
Antes do desastre ele:
avisa,
marca pending,
cria advisory,
registra utility,
sinaliza REORG,
aponta rebuild,
mostra waits,
denuncia locks.
O problema é:
pouca gente olha os comandos 😄
🚀 O QUE UM SYSPOG VETERANO FARIA?
Sequência clássica:
-DIS THREAD(*)
-DIS DB(*) SP(*) RESTRICT
-DIS UTIL(*)
-DIS LOG
-DIS BPOOL(*)
-DIS DATABASE(*) ADVISORY
Em poucos minutos ele consegue enxergar:
saúde do subsystem,
pressão operacional,
risco recovery,
gargalos,
objetos degradados,
ameaças à produção.
E isso…
diretamente do velho terminal 3270 💾🔥
Sem comentários:
Enviar um comentário