| Bellacosa Mainframe coloca o aluno a prova num lab db2 |
☕💾 LAB 2 — DB2 Teoria & Prática para Sysprog Júnior 💾☕
🎯 Objetivo do Laboratório
Neste laboratório o aluno irá aprender na prática:
- Catálogo e Diretório DB2
- Recovery e LOG
- Bufferpool
- EDM Pool
- Processamento interno DB2
- Address Spaces
- Troubleshooting básico
📘 Parte 1 — Conhecendo o Catálogo DB2
O que é?
O catálogo DB2 contém:
- definições de tabelas,
- índices,
- packages,
- plans,
- objetos do ambiente.
Objetivo Prático
Consultar informações do catálogo.
SQL
SELECT NAME, CREATOR
FROM SYSIBM.SYSTABLES
FETCH FIRST 10 ROWS ONLY;
Resultado Esperado
NAME CREATOR
----------- --------
SYSTABLES SYSIBM
SYSCOLUMNS SYSIBM
SYSINDEXES SYSIBM
Exercício
Quem criou as tabelas acima?
✅ SYSIBM
Explicação
O schema SYSIBM contém objetos internos fundamentais do DB2.
📘 Parte 2 — Entendendo o Diretório DB2
Conceito
O Directory DB2 armazena:
- objetos internos,
- controle operacional,
- informações críticas do subsistema.
Pergunta
Qual database representa o Directory?
A) DSNDB06
B) DSNDB01
C) SYSUTIL
D) DSNCAT
✅ Resposta: B
Curiosidade ☕
| Database | Função |
|---|---|
| DSNDB01 | Directory |
| DSNDB06 | Catalog |
📘 Parte 3 — Recovery e LOG
Objetivo
Visualizar informações de LOG.
Comando
-DISPLAY LOG
Resultado Simulado
CURRENT ACTIVE LOG DATA SET
COPY1 ACTIVE
COPY2 ACTIVE
Exercício
Quantas cópias de log estão ativas?
✅ 2
Explicação
O DB2 usa redundância para:
- recovery,
- rollback,
- restart,
- auditoria.
📘 Parte 4 — Simulando Recovery
Cenário
Uma tabela foi apagada acidentalmente.
Pergunta
Qual utilitário pode recuperar o objeto?
A) REORG
B) RECOVER
C) RUNSTATS
D) LOAD
✅ Resposta: B
Exemplo de Utility
//STEP1 EXEC PGM=DSNUTILB
//SYSIN DD *
RECOVER TABLESPACE DBTEST.TSCLI001
/*
📘 Parte 5 — Investigando Bufferpool
Objetivo
Consultar bufferpool.
Comando
-DISPLAY BUFFERPOOL(BP0)
Resultado Simulado
BUFFERPOOL NAME BP0
STATUS ACTIVE
VPSEQT 80
Exercício
O bufferpool está ativo?
✅ Sim
Pergunta
O bufferpool serve para:
A) Armazenar JCL
B) Cache de páginas DB2
C) Compilar COBOL
D) Gerar logs
✅ Resposta: B
📘 Parte 6 — EDM Pool
Conceito
EDM Pool armazena:
- packages,
- plans,
- estruturas SQL em memória.
Pergunta
Problemas no EDM Pool podem causar:
A) SQL lento
B) Falha JES2
C) IPL automático
D) VTAM DOWN
✅ Resposta: A
📘 Parte 7 — Processamento DB2
Fluxo Simplificado
Aplicação → SQL → DB2 → Bufferpool → Disco
Explicação
O DB2 tenta acessar primeiro:
✅ memória (bufferpool)
Depois:
✅ disco físico
Exercício
Qual acesso é mais rápido?
A) Disco
B) Bufferpool
✅ Resposta: B
📘 Parte 8 — Address Spaces DB2
Objetivo
Conhecer os principais Address Spaces.
Principais
| Address Space | Função |
|---|---|
| MSTR | Controle principal |
| DBM1 | Gerenciamento banco |
| IRLM | Locks |
| DIST | Conexões distribuídas |
Pergunta
Qual Address Space controla locks?
A) DIST
B) DBM1
C) IRLM
D) MSTR
✅ Resposta: C
📘 Parte 9 — Troubleshooting Real
Cenário
Usuários reclamam de lentidão.
Você executa:
-DISPLAY THREAD(*)
Resultado
THREAD STATUS = ACTIVE
TIME = 99999
AUTHID = BATCH01
Exercício
O que pode estar acontecendo?
A) Batch longo/travado
B) JES2 parado
C) IPL pendente
D) VTAM indisponível
✅ Resposta: A
Próximo Passo
Investigar:
- SQL executado,
- locks,
- utilities,
- CPU,
- I/O.
📘 Parte 10 — Determination Problem
Cenário
Aplicação travou.
Você suspeita:
- deadlock,
- lock,
- utility,
- objeto parado.
Sequência de investigação
1) Verificar objeto
-DISPLAY DATABASE(DBTEST)
2) Verificar threads
-DISPLAY THREAD(*)
3) Verificar utility
-DISPLAY UTILITY(*)
4) Verificar logs
-DISPLAY LOG
☕💀 DESAFIO FINAL — O Caçador de Problemas 💀☕
Cenário
Objeto aparece:
STATUS = STOPPED
Pergunta
Qual pode ser a causa?
A) Utility ativa
B) Recovery pendente
C) Intervenção operacional
D) Todas as anteriores
✅ Resposta: D 😅
📊 Resumo Final
| Tema | Conceito |
|---|---|
| Catalog | Metadados |
| Directory | Controle interno |
| LOG | Recovery |
| Bufferpool | Cache |
| EDM Pool | SQL em memória |
| Address Space | Estrutura DB2 |
| DISPLAY | Diagnóstico |
☕🔥 Dica Bellacosa Mainframe 🔥☕
Sysprog júnior que aprende:
- DISPLAY,
- recovery,
- bufferpool,
- catálogo,
- address spaces,
já começa a pensar como um verdadeiro especialista DB2 z/OS. ☕💾🔥