Postgre SQL Apresentação O PostgreSQL é atualmente o Sistema Gerenciador de Banco de Dados mais avançado do mundo, pois sua robustez e recursos disponibilizados fazem frente aos outros SGBDs proprietários e os supera em vários aspectos. O curso em si é proporcionar ao aluno conhecer o PostgreSQL, cuja licença é similar à licença BSD, com ênfase na linguagem SQL, com comandos SQL ISO (padrão internacional), padrão pelo qual o PostgreSQL é o SGBD mais compatível ou por comandos SQL exclusivos. O curso possui uma abordagem dinâmica em que um banco de dados fictício de uma empresa é dado como exemplo e vários exercícios são dados sobre o assunto. Objetivo O objetivo desse treinamento é apresentar para os alunos as melhores práticas na utilização do SGDB PostgreSQL, bem como os seus principais recursos e os conceitos da linguagem e as melhores práticas na administração do SGDB PostgreSQL. Ao final do treinamento será abordada a introdução à utilização de replicação, clusters e dblink dos bancos de dados PostgreSQL. Dados Principais Tecnologia Abordada PostgreSQL Carga Horária 64 horas (16 aulas) Período 19/02 à 28/03/2018 Dias e Horários Segunda, quarta e sexta 18:30h às 22:15h Idioma Português Formato Aulas presenciais com facilitador Facilitador Ricardo Barbosa Já trabalhou como Analista de Infraestrutura e Segurança por 2 e 6 anos, respectivamente. Atualmente atua como Analista de Hosting em Ambientes Linux e presta consultoria para serviços de segurança, infra e servidores. 1
Pré-requisitos É desejável ter conhecimentos básicos em informática e noções de lógica de programação. Público Alvo Indicado para desenvolvedores, analistas de sistemas, gerentes de TI, profissionais da área em geral que desejem conhecer e praticar as atividades pertinentes ao uso do SGBDs (Sistema Gerenciador de Bancos de Dados) PostgreSQL. Material Didático Incluso gratuitamente Para garantir a qualidade no aprendizado dos nossos alunos, o material didático utilizado durante o treinamento é o livro PostgreSQL Banco de dados para aplicações web modernas, da Casa do Código. Conteúdo Programático incluso Os seguintes módulos serão apresentados ao longo do treinamento: Introdução ao projeto PostgreSQL O que é o PostgreSQL? Histórico Hoje em dia Licença Características Plataformas Suportadas Características atuais Estrutura física Arquitetura do PostgreSQL Processos do PostgreSQL Memória e o PostgreSQL Disco e o PostgreSQL Como instalar o PostgreSQL Baixando e instalando o PostgreSQL 2
Estrutura lógica. Testando o PostgreSQL Conexão básica ao servidor Tablespaces Bancos de dados (Data bases) Schemas Índices Cargas de dados Criando banco de dados via código Apagando banco de dados via código Autenticação e gerenciamento de usuários. Criação de usuários Papéis de usuário Concessão de privilégios Papéis de grupo Tipos de privilégio O Arquivo de Autenticação: pg_hba.conf Parando o Cluster do PostgreSQL. Usando o pg_ctl Parada Smart Parada Fast Parada Immediate Uso do kill Exportação e importação de dados Exportação de dados Importação de dados (carga) Exportar tabela da empresa treinamento para html e cvs Visualizar arquivos html e cvs Exportar tabela para cvs Funcionamento interno do PostgreSQL Parte I WAL e shared buffers WAL Write Ahead Log Shared Buffers OIDs Object Identifiers Armazenamento físico 3
Funcionamento interno do PostgreSQL Parte II MVCC Multiversion Concurrency Control Vacuum e analyze Vacuum Full Freeze e Autovacuum Locks e deadlocks Performance e Tuning Parte I Recurso de hardware Sistema operacional Sistema de arquivos Separação do pg_xlog Uso de Pooler de conexões Performance e Tuning Parte II PgBouncer Particionamento de tabelas Bancos OLTP Bancos OLAP Monitoramento pontual e contínuo Performance e Tuning Parte III Benchmarking com pgbench Consultas lentas Tuning de log PgBadger Plano de execução O postgresql.conf. Utilizando a view pg_settings Conexão Uso de recursos Custos do planejador Log e Estatísticas Integração do PostgreSQL com Rsyslog Cria usuário e definir privilégios para o banco Configurar acesso de conexão no pg_hba.conf Instalação e configuração do Rsyslog Integração do Rsyslog com Postgresql (PHPLogCon) 4
Backup e Recuperação Backup pontual e restauração de um banco de dados Backup pontual e Restauração de um cluster Point-In-Time Recovery Estratégia de Backup Point-In-Time Recovery Backup inicial Point-In-Time Recovery Recuperação Automatizando a realização do backup Replicação Nativa Hot-standby com streaming replication Replicação síncrona e assíncrona Monitorando o estado da replicação Promovendo um nó Outras ferramentas de replicação Extras, conclusão do projeto da empresa treinamentos Instalando e utilizando o PgAdmin Apresentação do projeto empresa treinamentos P.S. Este roteiro do treinamento deve ser utilizado para determinar se o curso é apropriado para o profissional, tendo em vista seus conhecimentos e necessidades de treinamento técnico. O conteúdo, assim como o preço e a disponibilidade de vagas estão sujeitos a alterações sem aviso prévio. 5