You are on page 1of 50

|  


 
 

O , o banco de dados relacional de código aberto
mais avançado do mundo!
Venha criar, gerenciar, administrar e otimizar o PostgreSQL para
extrair o máximo de performace, além de executar e manter
funções em linguagem SQL e PL/pgSQL, triggers e rules.
|  


 
 

]
 PostgreSQL, Software Livre
Ô    80h
|  


 
 

  PostgreSQL Fundamentos
 Duração 20h
PostgreSQL Procedural
Duração 20h
PostgreSQL Administração
Duração 20h
PostgreSQL Administração Avançada
Duração 20h

  

apacitar os alunos a entender e executar comandos SQL
ANSI básico e avançado na base de dados PostgreSQL.
Ô    20h

  

  

0ompreender a estrutura de um Banco de Dados relacional


* Entender a linguaguem SQL
* Utilizar SQL para consultar,inserir,alterar e deletar dados
* Utilizar SQL para criar,alterar e remover objetos do Banco de Dados

O   

* Experiência com a utilização de uma interface gráfica para usuário


(windows ou linux)
* Familiaridade com conceitos e técnicas de processamento de dados
* Noções de Informática
* urso T@rgetTrust de Lógica de Programação ou conhecimento similar

  

O  

 Administradores de Dados
 Administradores de Banco de Dados
 Administradores de Sistema Operacional e Redes
 Analistas de Sistemas
 Arquitetos de Sistemas e Projetistas
 Desenvolvedores de Aplicações
 Diretores de Informática
 Gerentes de Informática
 Programadores
 Web Developers
 Web Managers

  





 
 

* iclo de Vida do Desenvolvimento de * Histórico do SQL


Sistemas * Vantagens do Padrão
* Armazenamento de Dados em * Desvantagens do Padrão
Diferentes Mídias * omandos SQL/92
* Histórico de Bancos de Dados * Histórico do PostgreSQL
* Banco de Dados Relacional * Linguagem PL/pgSQL
* Modelos de Dados * Arquitetura lient/Server
* Modelo ER * Acesso aos Dados
* onvenções do Modelo Entidade- * Perguntas e respostas sobre
Relacionamento PostgreSQL
* Terminologia Utilizada em Bancos de * Tabelas Utilizadas no urso
Dados Relacionais
* Relacionando Múltiplas Tabelas
* SQL e Banco de Dados Relacional
* omunicando com um RDBMS

  


a  ]!"

* aracterísticas do omando * Definindo um Valor Nulo


SELET * Valores Nulos em Expressões
* omando SELET Básico Aritméticas
* Escrevendo omandos SQL * Definindo um Alias de oluna
* Selecionando todas as * Utilizando Alias de olunas
olunas * Operador de oncatenação
* Selecionando olunas * Strings de aracteres Literais
Específicas * Linhas Duplicadas
* Padrões de abeçalho de * Eliminando Linhas Duplicadas
olunas * Exibindo a Estrutura de
* Expressões Aritméticas Tabelas
* Utilizando Operadores
Aritméticos
* Precedência dos
Operadores
* Utilizando Parênteses

  


r

 



* Exibindo a Estrutura de * Operador IS NULL


Tabelas * Operadores Lógicos
* Limitando as Linhas * Operadores AND
Selecionadas * Operador OR
* Utilizando a láusula WHERE * Operador NOT
* Strings de aractere e Datas * Regras de Precedência
* Operadores de omparação * láusula ORDER BY
* Utilizando os Operadores de * lassificando em Ordem
omparação Descendente
* Outros Operadores de * Ordenando pelo Alias de
omparação oluna
* Operador BETWEEN * Ordenando por Múltiplas
* Operador IN olunas
* Operador LIKE

  


Î
#

* Funções SQL * Funções de Manipulação de


* Tipos de Funções SQL aracteres
* Funções do Tipo Single-Row * Funções de Manipulação de
* Funções Single-Row do SQL Datas
Standard * álculos com Datas
* Funções de onversão entre * Utilizando Operadores
Maiúsculas/Minúsculas Aritméticos com Datas
* Utilizando Funções de onversão * riando um padrão para ficar
entre Maiúsculas/Minúsculas dentro do padrão
* Funções Genéricas
* onversão de Tipos de Dados
* Operador ASE

  


* Utilizando a Operador ASE * Função TO_HAR com Datas


* Funções Proprietárias * Elementos de Formatação de
* Funções Numéricas Datas
* Utilizando a Função ROUND * Utilizando a Função TO_HAR
* Utilizando a Função TRUN com Datas
* Utilizando as Funções EIL[ING] e * Função TO_HAR com Números
FLOOR * Utilizando a Função TO_HAR
* Funções de Manipulação de com Números
aracteres Proprietárias * Funções TO_NUMBER e
* Funções de onversão e TO_DATE
Formatação * Aninhando Funções

  


X$%&  

 Ô  
'" ]  
* Relacionando mais de Duas
* Obtendo Dados a Partir de Múltiplas Tabelas
Tabelas * Non-Equijoins
* O que é um Join? * Recuperando Registros com
* Produto artesiano Non-Equijoins
* Gerando um Produto artesiano * ANSI Join
* O que é um Equijoin? * Outer Joins
* Recuperando Registros com Equijoins * Recuperando Registros
* Qualificando Nomes de olunas Utilizando Outer Join
Ambíguos * Self Joins
* ondições Adicionais de Pesquisa * Relacionando uma Tabela com
com o Operador AND Ela Mesma
* Utilizando Alias de Tabela

  


†( 
 Ô    )
 

#* 

* O que são Funções de Grupo?


* Funções de Grupo Padrão
* Funções de Grupo Proprietárias
* Utilizando Funções de Grupo
* Utilizando as Funções AVG e SUM
* Utilizando as Funções MIN e MAX
* Utilizando a Função OUNT
* Funções de Grupo e Valores Nulos
* Utilizando a Função OALESE com
Funções de Grupo
* riando Grupos de Dados
* riando Grupos de Dados: láusula
GROUP BY

  


* Utilizando GROUP BY
* Agrupando por Mais de Uma
oluna
* Utilizando GROUP BY em
Múltiplas olunas
* onsultas Ilegais Utilizando
Funções de Grupo
* Excluindo Resultados de
Grupos
* Excluindo Resultados de
Grupos: láusula HAVING
* Utilizando HAVING

  


´  )
    ]

* onformidade com o Padrão


* Regras para o uso de
Operadores SET
* União - UNION
* Interseção - INTERSET
* Diferença ± EXEPT

3 
  

* Utilizando uma Subconsulta para


Resolver um Problema
* Subconsultas
* Utilizando uma Subconsulta

  


* Diretrizes para Utilização de


Subconsultas
* Tipos de Subconsultas
* Subconsultas Single-Row
* Executando Subconsultas
Single-Row
* Utilizando Funções de Grupo
em um Subconsulta
* láusula HAVING com
Subconsultas
- Qual o Erro deste omando?
- Este omando Funcionará?
- Subconsultas do Tipo Multiple-
Row
- Utilizando o Operador ANY em
Subconsultas Multiple-Row
- Utilizando o Operador ALL em
Subconsultas Multiple-Row

  


· 
   +    

* Subconsultas Multiple-olumn
* Utilizando Subconsultas Multiple-
olumn
* omparações de olunas
* Subconsulta com omparação Tipo
Nonpairwise
* Modificando a Tabela EMP
* Subconsulta Tipo Pairwise
* Subconsulta Tipo Nonpairwise
* Valores Nulos em uma Subconsulta
* Utilizando uma Subconsulta na
láusula FROM
* Utilizando uma Subconsulta na
cláusula SELET
* ondição EXISTS
* Subconsultas orrelatas

  


,+

 Ô  

* Linguagem de Manipulação de Dados


* Inserindo uma Nova Linha em uma Tabela
* omando INSERT
* Inserindo Novas Linhas
* Inserindo Linhas com Valores Nulos
* Inserindo Valores Especiais
* Inserindo Valores de Data Específicos
* Alterando Dados em uma Tabela
* omando UPDATE
* Alterando Linhas em uma Tabela
* Utilizando subconsulta na cláusula SET
* Atualizando Linhas: Erro de onstraint de
Integridade
* Removendo uma Linha de uma Tabela
* omando DELETE

  


* Removendo Linhas de uma Tabela


* Removendo Linhas com Base nos Valores
de Outra Tabela
* Removendo Linhas: Erro de onstraint de
Integridade
* Transações de Banco de Dados
* Autocommit
* Quando uma Transação Inicia ou Termina?
* ontrolando Transações
* Situação dos Dados Antes do OMMIT ou
ROLLBAK
* Situação dos Dados Após o OMMIT
* Efetivando os Dados
* Situação dos Dados Após o ROLLBAK
* Definindo Save Points Dentro das
Transações
* Desfazendo as Alterações Até uma Marca
* Leitura onsistente

  



 *

 
]  

* Objetos do Banco de Dados


* onvenções de Nomes
* omando REATE TABLE
* Opção DEFAULT
* riando Tabelas
* Tipos de Dados Padrões
* riando uma Tabela Utilizando
uma Subconsulta
* omando ALTER TABLE
* Adicionando uma oluna
* Removendo uma Tabela
* Modificando o nome da Tabela
* Modificando o nome da oluna da
Tabela
* Truncando uma Tabela

  


a% 

 



* O Que são onstraints?


* Diretrizes para onstraints
* Definindo onstraints
* onstraint NOT NULL
* onstraint UNIQUE Key
* onstraint PRIMARY KEY
* onstraint FOREIGN KEY
* Palavras have de onstraints
FOREIGN KEY
* onstraint HEK
* Adicionando uma onstraint
* Removendo uma onstraint

  


r
 ' #

^ Objetos do Banco de Dados


* O que é uma Visão?
* Porquê Utilizar Visões?
* riando uma Visão
* Recuperando Dados de uma Visão
* Modificando uma Visão
* Visões Simples e Visões omplexas
* riando uma Visão omplexa
* Regras para Executar Operações DML
em uma Visão
* Utilizando a láusula WITH HEK
OPTION
* Removendo uma Visão

  


Î    !



Ô  

* Objetos do Banco de Dados


* Tipos de ontadores
* O que é uma Sequence?
* omando REATE SEQUENE
* riando uma Sequence
* NEXTVAL e URRVAL
* Utilizando uma Sequence
* Alterando NextVal de uma Sequence
* Removendo uma Sequence
* O que é um Índice?
* omo os Índices são riados?
* riando um Índice
* Diretrizes para a riação de Índices
* Removendo um Índice

 

apacitar os alunos a criar, executar e manter funções em
linguagem SQL e PL/pgSQL, Functions, Trigger Procedures e
Rules.
Ô    20h

 

  

* riar, executar funções SQL e PL/pgSQL


* Dar manutenção em funções SQL e PL/pgSQL
* riar triggers e rules
* Dar manutenção em triggers e rules
* onverter um sistema em Oracle PL/SQL para PostgreSQL PL/pgSQL

O   

* Experiência com a utilização de uma interface gráfica para usuário


(windows ou linux)
* Familiaridade com conceitos e técnicas de processamento de dados
* Noções de Informática
* onhecimentos de Lógica de Programação (curso T@rgetTrust Lógica de
Progamação)
* Noções básicas do Sistema Operacional Linux ou curso T@rget
Administração de Sistemas Linux
* urso PostgreSQL Fundamentos

 

O  

* Administradores de Dados
* Administradores de Banco de Dados
* Administradores de Sistema
Operacional e Redes
* Analistas de Sistemas
* Arquitetos de Sistemas e Projetistas
* Desenvolvedores de Aplicações
* Diretores de Informática
* Gerentes de Informática
* Gerentes de Suporte
* Programadores
* Profissionais do Suporte Técnico
* Web Developers
* Web Managers

 





# aO-'  *

* Introdução * O que é PL/pgSQL?


* riando uma Função * Vantagens de usar
* Verificando uma Função PL/pgSQL
* Removendo uma Função * omo Desenvolver em
* Funções SQL PL/pgSQL?
* Usando Funções SQL * Estrutura básica do
* Usando Funções SQL com Tipos de PL/pgSQL
Dados ompostos * aracterísticas do
* Retornando um Tipo de Dado PL/pgSQL
omposto * omentários
* Funções Internas
* Funções em Linguagem 
* Sobrecarga de Funções
* Funções em Linguagem Procedural
* Tabelas Utilizadas no urso

 


rÔ 
 '  "  Î  
  
 
O-
* omo Utilizar Variáveis em
PL/pgSQL * Sintaxe e Diretrizes de um Bloco
* Declarando Variáveis em PL/pgSQL
PL/pgSQL * Funções SQL em PL/pgSQL
* Tipos de Variáveis * Executando Funções PL/pgSQL
* Regras de Nomenclatura * onversão de Tipos de Dados
* onvenções de * Blocos Aninhados e Escopo de
Nomenclatura Variáveis
* Variáveis Booleanas * Operadores em PL/pgSQL
* Alias para Parametros de * Diretrizes de Programação
Funções * Identando o ódigo
* Atribuição de Valores * Determine o Escopo das
* Atributo %TYPE Variáveis
* Declarando Variáveis
Registros
* Atributo %ROWTYPE

 


X . 
  
 
O-

* omandos SQL em PL/pgSQL


* omandos SELET em PL/pgSQL
* Diretrizes
* Recuperando Dados em PL/pgSQL
* Manipulando Dados Utilizando
PL/pgSQL
* Inserindo Dados
* Atualizando Dados
* Quantidade de linhas afetadas
* Removendo Dados
* onvenções de Nomenclatura
* onferindo a execução de comandos
SQL
* omandos DDL e DL

 


†    


 

* ontrolando o Fluxo de * onstruindo ondições Lógicas


Execução PL/pgSQL * Tabelas de Lógica
* omandos IF * ondições Booleanas
* omandos IF Simples * ontrole de Repetições: omandos
* omandos IF-THEN-ELSE de LOOP
* Fluxo de Execução do omando * LOOP Básico
IF-THEN-ELSE * FOR LOOP
* omandos IF-THEN-ELSIF * WHILE Loop
* Fluxo de Execução do omando * LOOPs Aninhados e Labels
IF-THEN-ELSIF

 


´] 
   

* Níveis de notificação
* Gerando mensagens
* apturando erros

3   . /  

* ursores
* ursores Explícitos
* ontrolando ursores Explícitos
* Declarando o ursor
* Abrindo um ursor
* Recuperando Dados do ursor
* Fechando um ursor
* Resultados de ursores

 


* FOR LOOP sobre o


resultado de uma consulta
* Utilizando RETURN NEX]

·Ô
0 
O-

* onceito
* Usando SQL Dinâmico
* O omando EXEUTE
* Utilizando o omando
EXEUTE
* Os omandos OPEN-FOR-
EXEUTE e FOR-IN-
EXEUTE

 


,]  O  

* Triggers - Visão Geral


* Elementos de uma Database Trigger
* Triggers em Nível de Linha e em Nível
de omando
* riando uma Trigger
* Funções PL/pgSQL que são
executadas por Triggers
* Variáveis disponíveis em funções
PL/pgSQL
* Triggers em Nível de Linha
* Valores OLD e NEW
* Exemplo do Uso de Triggers em Nível
de Linha
* riando uma Trigger em Nível de
omando
* Removendo uma Trigger

 


 

* Rules
* Diretrizes para o uso de Rules
* Substituindo omandos SQL
* ancelando omandos SQL
* Rules SELET - Implementado
Visões
* Usando Rules em visões
* Restrições do uso de Rules
* Usando funções PL/pgSQL com
Rules
* Gerenciando Rules

a+  )

* omo Usar Matrizes em PostgreSQL


* Uso de matrizes em PL/pgSQL

 | 
Instalação e Administração do Banco de Dados: criar ,
gerenciar, administrar e otimizar o Banco de Dados PostgreSQL
para extrair o máximo de performace.
Ô    20h

 | 
  

* riar um Banco de Dados


* Gerenciar um luster
* Otimizar o Banco de Dados
* Instalar o PostgreSQL no Linux
O   

* Familiaridade com conceitos e técnicas de processamento de dados


* Noções de Informática
* urso Administração de Sistemas em Linux T@rgetTrust ou
conhecimento similar
* urso de PostgreSQL Fundamentos, SQL Básico e Avançado
* urso PostgreSQL Procedural: Linguagem Procedural PL/pgSQL,
Functions, Trigger Procedures e Rules, ou conhecimento similar
* urso: Lógica de Programação, ou conhecimento equivalente

 | 
O  

* Administradores de Banco de Dados


* Administradores de Sistema
Operacional e Redes
* Administradores de Dados

 | 



%
  
1    

.2
 3
* Variáveis de Ambiente
* Objetivos * Iniciando a área de dados
* Obtendo o software de instalação * Iniciando o serviço
* Antes de instalar * Falhas ao iniciar o servidor
* Plataformas Suportadas de banco de dados
* Instalação no Windows * Problemas de conexão dos
* Instalação rápida pelo fonte clientes
* Instalação normal pelo fonte * As Ferramentas do
* A conta de usuário PostgreSQL Debian/Ubuntu

 | 

a( 
   
 Î*

 O  
* Objetivos
O #
* Autenticação de lientes * Objetivos
* O arquivo pg_hba.conf * Gerenciando Papéis e
* Métodos de autenticação Permissões
* Problemas de autenticação * Papéis de Bancos de Dados
* Atributos de Papéis
r*

 !
Ô  
* Permissões
* Objetivos * Assumindo Papéis
* Gerenciando Bancos de Dados * Funções e Triggers
* riando um Banco de Dados
* Banco de Dados Template
* riando Esquemas (schemas)
* Destruindo Bancos de Dados
* Áreas de dados (tablespaces)
* Suporte a internacionalização

 | 

X! 4   †  


   
 . 
* Objetivos
* Backup e Restore * Objetivos
* SQL Dump * onfiguração em modo de
* Restaurando a partir do SQL Dump execução
* Usando o pg_dumpall * Limitação de recursos
* Grandes Bancos de Dados * Tirando o servidor do ar
* Avisos (Shutdown)
* Alternativas de Backup e Restore * onexões TP/IP seguras com
* Migração entre releases SSL
* onexões TP/IP seguras com
SSL com túneis SSH

 | 

´+

  !
 3+
 
  (    
Ô   !
Ô  

* Objetivos * Objetivos
* onsiderações Gerais * onsiderações Gerais
* A rotina de Vacuum * Ferramentas standard do Unix
* Recuperando espaço em disco * O coletor de estatísticas
* Prevenindo falhas de transaction * onfiguração do coletor
ID wraparound * Vendo as estatísticas coletadas
* Atualizando as estatísticas do * Views de estatísticas standard
planejador * onsultando locks
* Manutenção do Arquivo de Log

 | 

·2 (5   
 62(7

* Objetivos
* onsiderações Gerais
* Benefícios imediatos do WAL
* PITR
* Implementação
* Recovery do Banco de Dados
com o WAL
* onfiguração do WAL

, 5 !

Ô  

* Objetivos
* onsiderações Gerais
* Disco cheio
* Falha de disco

 |  |  
Este curso aborda a otimização, performance e replicação
do BD.
Ô    20h

 |  |  
  

* Otimizar os parâmetros de uso de hardware


* Analisar os logs do banco e fazer uma análise das consultas
* onfigurar uma solução de replicação de dados

O   

* Bons conhecimentos em Linux e Windows®


* urso PostgreSQL Fundamentos

 |  |  
O  

* Administradores de Dados
* Administradores de Banco de
Dados
* Administradores de Sistema
Operacional e Redes

 |  |  



O
/ 1 
 rO 8  

   
9 3 

* Introdução * O Hardware e o SGBD


* Tipos de otimização * RAM
* Análise de Performance * IO
* Preparando o ambiente para * PU
otimização * onsiderações Finais

a 
    Î )
 
5 4

 
  1 

* oletando dados do sistema
operacional * Benchmark e TP
* oletando dados do SGBD * Usando o pgbench
* Monitorando a performance

 |  |  

X(

   )
 
  

* Usando o pgFouine
* Usando o EXPLAIN e o EXPLAIN
ANALYZE
* Explain gráfico
* Otimizando o plano

†(  Ô 
  
!
 
  

* Tipos de solução
* onfigurando um servidor para warm
standby
* O pgpool 2
]  

O O   
 !
 


  )#
     0

  !"#
  
  12
  $
 O
%
 O&'OO /  /33
 
$
 (
 &&) *+ O
4)
$
,- 
./
 ] 
333   


You might also like