Formação BDP1203 – Administração e Otimização do Motor de Base de Dados PostgreSQL
Enquadramento
Este curso abrange variados temas que são importantes para os administradores de bases de dados PostgreSQL. A formação inclui exercícios destinados a criar um ambiente formativo de análise e interação entre formador e formandos. Os formandos irão aprender com a experiência, numa vertente bastante prática.
Objetivos
- Aprender a administrar a bases de dados PostgreSQL.
- Aprender a utilizar módulos úteis, como connection pooling e replicação.
Destinatários
Profissionais com pouca experiência em PostgreSQL que querem aprender a administrar bases de dados PostgreSQL.
Profissionais de Web Design que querem construir sites Web baseados em servidores PostgreSQL.
Pré-requisitos
[BDP1201] Introdução ao Motor de Base de Dados PostgreSQL
ou bons conhecimentos dos fundamentos de UNIX/Linux e Compreensão de SQL (Structured Query Language).
Duração
30 horas/5 dias
Outros Cursos Recomendados
[EBDP1205] - Motor de Base de Dados PostgreSQL e a Linguagem SQL
Conteúdo Programático
Introdução
- O que é o PostgreSQL
- Principais funcionalidades
- Plataformas Suportadas
- Limitações do PostgreSQL
Fontes de Informação
Instalação e configuração de PostgreSQL
- Preparação da instalação
- Download e instalação de PostgreSQL
- Configuração do arranque automático no processo de boot
- Configuração do PostgreSQL para acesso via rede
Interface de Acesso
Utilização do Cliente psql
- Ligação ao PostgreSQL
- Meta-comandos do psql
- Variáveis internas do psql
- Exemplos
- Configurar o PATH para aceder ao psql
- Listar os comandos “\” do psql
- Execução de comandos SQL em psql
- Deixar expressões sem fechar
Exemplos
- Configurar o PATH para aceder ao psql
- Listar os comandos "\" do psql
- Execução de comandos SQL em psql
Outras Interfaces de Programação
Criar e gerir Views
- Criação de Views
- Exemplo
Criar e gerir índices
- Compreender os índices
- Tipos de índices em PostgreSQL
- Criação de índices
- Índices em expressões
- Índices parciais
- Exemplo
Transações e concorrência
- Transações
- Isolar transações
- Iniciar transações em PostgreSQL
- Savepoints
Gerir as permissões das bases de dados
- Roles PostgreSQL
- Roles de utilizadores
- Alterar os Roles de utilizadores
- Outras propriedades dos Roles
Controlo de acessos com GRANT
- Os comandos GRANT e REVOKE
- Opções do GRANT para bases de dados
- Opções do GRANT para ROLES
- Exemplo
Estrutura dos dados em PostgreSQL
- O armazenamento (storage) para o PostgreSQL
- Gestão da utilização de espaço em Table Spaces
- Exemplo
Inheritance e Particionamento
- Utilização da Inheritance
- Tipos de particionamento
- Gestão de partições
Criar e gerir Tablespaces e bases de dados PostgreSQL
- Tablespaces PostgreSQL
- Utilização do comando CREATE DATABASE
- Exercícios
Schemas PostgreSQL
- O Schema
- Gestão de Schemas
Logging em PostgreSQL
- Ficheiros de log do servidor
- Configurar quando logar mensagens
- Configurar o que logar
- Exercício
Backup e Recovery
- Backup com pg_dump
- Utilização do pg_dumpall
- Recuperação de ficheiros com pg_restore e psql
- Realizar backups ao nível dos ficheiros
- Exercícios
Point in Time Recovery (PITR)
- PostgreSQL Write-Ahead Logs
- Realizar um Backup PITR
- Recuperar um Backup PITR
- Exercícios
Utilização da Otimização de Execução de Queries
- Análise e otimização de Execução Queries
- Utilizar o comando EXPLAIN para ver os planos de execução
- Compreender os operadores de Queries PostgreSQL
Monitorização do servidor e otimização de performance
- Variáveis de configuração do servidor
- Parâmetros de otimização de queries
- As estatísticas do Planner
- Otimização da performance do Hardware
- Dicas para a Otimização de Performance do Postgresql
Gestão do espaço livre
- Comandos SQL
- Configurar e utilizar o Auto-Vacuum Daemon
- Otimizar os parâmetros de free space map, postgresql.conf
Replicação, Alta Disponibilidade e Balanceamento de Carga
Índices de Full Text
- Criação de Índices
- Pesquisa de Documentos