MATERIAIS DE APOIO
📚 Recursos
Scripts SQL, diagramas e materiais complementares
📄
Ver Conteúdo Completo
Você está no Conteúdo Compacto
Resumo dos recursos em uma única página
💻
Scripts SQL Práticos
Prontos para executar em seu ambiente
M1 Fundamentos SQL
Criar Tabelas de Exemplo (Livraria)
CREATE TABLE AUTORES (
AUTOR_ID NUMBER PRIMARY KEY,
NOME_AUTOR VARCHAR2(100) NOT NULL,
PAIS_ORIGEM VARCHAR2(50)
);
CREATE TABLE LIVROS (
LIVRO_ID NUMBER PRIMARY KEY,
TITULO VARCHAR2(200) NOT NULL,
ANO_PUBLICACAO NUMBER(4),
PRECO NUMBER(10, 2),
AUTOR_ID NUMBER REFERENCES AUTORES(AUTOR_ID)
);
-- Inserir dados de exemplo
INSERT INTO AUTORES VALUES (1, 'J.K. Rowling', 'Reino Unido');
INSERT INTO AUTORES VALUES (2, 'George Orwell', 'Reino Unido');
INSERT INTO AUTORES VALUES (3, 'Machado de Assis', 'Brasil');
INSERT INTO LIVROS VALUES (101, 'Harry Potter e a Pedra Filosofal', 1997, 35.00, 1);
INSERT INTO LIVROS VALUES (102, '1984', 1949, 28.50, 2);
INSERT INTO LIVROS VALUES (103, 'Dom Casmurro', 1899, 22.00, 3);
INSERT INTO LIVROS VALUES (104, 'A Revolução dos Bichos', 1945, 25.00, 2);
COMMIT;
M2 Administração Básica
Gerenciamento de Usuários e Tablespaces
-- Criar usuário (execute como SYSTEM ou SYS)
CREATE USER analista IDENTIFIED BY Oracle123;
-- Conceder privilégios básicos
GRANT CREATE SESSION, CREATE TABLE TO analista;
-- Criar tablespace
CREATE TABLESPACE APP_DATA
DATAFILE '/u01/app/oracle/oradata/XE/app_data01.dbf' SIZE 50M;
-- Alterar usuário para usar novo tablespace
ALTER USER analista DEFAULT TABLESPACE APP_DATA QUOTA 40M ON APP_DATA;
-- Verificar usuários criados
SELECT USERNAME, CREATED, DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME = 'ANALISTA';
-- Verificar tablespaces
SELECT TABLESPACE_NAME, STATUS FROM DBA_TABLESPACES;
-- Verificar espaço livre em tablespaces
SELECT TABLESPACE_NAME, SUM(BYTES)/1024/1024 AS FREE_MB
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME;
-- Verificar sessões ativas
SELECT USERNAME, SID, SERIAL#, STATUS FROM V$SESSION;
M3 Administração Avançada
Comandos RMAN (executar no RMAN, não SQL*Plus)
# Conectar ao RMAN
$ rman target /
# Backup completo
RMAN> BACKUP DATABASE;
# Listar backups
RMAN> LIST BACKUP;
# Validar backup
RMAN> RESTORE DATABASE VALIDATE;
# Recuperar tablespace
RMAN> SQL 'ALTER TABLESPACE USERS OFFLINE';
RMAN> RESTORE TABLESPACE USERS;
RMAN> RECOVER TABLESPACE USERS;
RMAN> SQL 'ALTER TABLESPACE USERS ONLINE';
Auditoria
-- Criar política de auditoria
CREATE AUDIT POLICY auditoria_geral
ACTIONS LOGON FAILED, CREATE USER;
AUDIT POLICY auditoria_geral;
-- Verificar registros de auditoria
SELECT AUDIT_TYPE, ACTION_NAME, DBUSERNAME, EVENT_TIMESTAMP
FROM UNIFIED_AUDIT_TRAIL
WHERE UNIFIED_AUDIT_POLICIES = 'AUDITORIA_GERAL'
ORDER BY EVENT_TIMESTAMP DESC;
M4 Performance e Tuning
Plano de Execução e Índices
-- Gerar plano de execução
EXPLAIN PLAN FOR
SELECT L.TITULO, A.NOME_AUTOR
FROM LIVROS L
JOIN AUTORES A ON L.AUTOR_ID = A.AUTOR_ID
WHERE A.PAIS_ORIGEM = 'Reino Unido';
-- Ver o plano de execução
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
-- Criar um índice
CREATE INDEX idx_livros_autor_id ON LIVROS(AUTOR_ID);
-- Coletar estatísticas
EXEC DBMS_STATS.GATHER_TABLE_STATS('HR', 'EMPLOYEES');
-- Visualizar índices criados
SELECT INDEX_NAME, TABLE_NAME, COLUMN_NAME FROM DBA_IND_COLUMNS;
M5 Alta Disponibilidade
Verificações de Status
-- Verificar status do banco de dados
SELECT NAME, OPEN_MODE, DB_UNIQUE_NAME FROM V$DATABASE;
-- Verificar modo de arquivo (necessário para RMAN)
SELECT LOG_MODE FROM V$DATABASE;
-- Verificar instâncias em um RAC
SELECT INSTANCE_NUMBER, INSTANCE_NAME, STATUS FROM GV$INSTANCE;
-- Gerenciamento de PDB (se Multitenant)
SHOW PDBS;
ALTER PLUGGABLE DATABASE PDB1 CLOSE;
ALTER PLUGGABLE DATABASE PDB1 OPEN;
🖼️
Diagramas e Imagens
Visualizações da arquitetura Oracle
📊
Diagrama ER
Modelo Entidade-Relacionamento
diagrama_er.png
🏗️
Arquitetura Oracle
Instância e Banco de Dados
arquitetura_oracle_1.jpg
⚙️
Arquitetura DBA
Visão detalhada para o DBA
arquitetura_dba.png
💡
Conceitos DBA
Mapa conceitual
conceitos_dba.png
🧹
Scripts de Limpeza
Para remover dados de teste (use com cuidado!)
-- ATENÇÃO: Execute apenas se quiser remover os objetos de teste
-- Remover tabelas de teste
DROP TABLE LIVROS;
DROP TABLE AUTORES;
-- Remover usuário de teste
DROP USER analista CASCADE;
-- Remover tablespace
DROP TABLESPACE APP_DATA INCLUDING CONTENTS AND DATAFILES;
Continue Aprendendo!
Use esses recursos para praticar os conceitos aprendidos em cada módulo.