SlideShare uma empresa Scribd logo
1 de 59
Baixar para ler offline
mesmoemambientescríticos
Gerenciamento de Backup e
RecoverycomBarman:
Cleysson Lima
Especialista em Banco de
Dados
• Profissional com mais de 10
anos de experiência.
• Meus conhecimentos atribuem
também a outros produtos como
Oracle e MySQL, participante
ativo da comunidade
PostgreSQL no Brasil.
• Especialista em banco de
dados na Tecnisys Tecnologias
Inovadoras.
Heron Bonfim
Especialista em Banco de
Dados
• Profissional com mais de 20
anos de experiência em TI:
• 10 como desenvolvedor
• 10 como DBA, BI
• DBA multiplataforma: MySQL,
PostgreSQL e SQL Server
• Atualmente na Confederação
Nacional do Transporte
Backup and Recovery
● Planejando backupse recovery
● Backup lógico
● Backup físico
● Arquivamento contínuo (Continuousarchiving)
● Restore e Recovery
● Validação de backups
Backup and Recovery
Planejando backups e recovery
Tiposde falha
● Corrupção de dados
● Falhade hardware
● Desastre natural
● Prédio pegou fogo
Planejando backups e recovery
Tamanho do banco de dados
● Influencianaduração
● Consumo (disco,rede,CPU)
● Armazenamento e oscustos
Planejando backups e recovery
Local de armazenamento: paraonde estão indo osbackups?
● Servidor remoto
● Armazenamento em fita
● Nuvem
● Servidor no pé damesa
● HD Externo
Planejando backups e recovery
Recovery Point Objective (RPO)
● Quanto de dadosvocê pode perder?
Recovery Time Objective (RTO)
● Quanto tempo pode ficar parado?
Planejando backups e recovery
Planejando backups e recovery
Planejando backups e recovery
Backup lógico
● pg_dump
● pg_dumpall (tablespaces,groupse users)
Timeline Dump
● pg_dump agendado todos os dias 1h da manhã
Backup físico (filesystem)
Estratégia de backup que copiadiretamente osarquivosdo
$PGDATA (diretório de dadosdo PostgreSQL)
● pg_basebackup
● pg_start_backup() e pg_stop_backup()
● RSYNC
● SCP
Backup físico e arquivamento contínuo
(continuous archiving)
● PostgreSQL mantém logs(WAL) no subdiretório pg_wal/ do
diretório de dadosdo cluster
● A existência doslogs(WAL) tornapossível usar umaterceira
estratégia de backup: combinação de um backup de filesystem
com o backup dosarquivosWAL
Streaming
O erro foi replicado…
Ferramentas
● Barman: http://www.pgbarman.org/
● OmniPITR: https://github.com/omniti-labs/omnipitr
● PgBackRest:http://www.pgbackrest.org/
● PgHoard: https://github.com/ohmu/pghoard
● WAL-E: https://github.com/wal-e/wal-e
Lembretes
● Planejamento
● Backup com o pg_dump (PITR)
● Tempo
● Teste, Teste, Teste e Teste
● Teste novamante
https://www.pgbarman.org/
BARMAN
Principais recursos:
● Backup físico completo de um servidor PostgreSQL
● Backup remoto via rsync/SSH ou pg_basebackup (incluindo um standby 9.2+)
● Backup incremental
● Backup e recuperação paralelos
BARMAN
Principais recursos:
● Suporte paraarquivamento e streaming do WAL
● Suporte parastreaming WAL síncrono ("perdade dadoszero",RPO = 0)
● Compactação de arquivosWAL (bzip2,gzip ou custom)
● Parallel Jobs
○ Backup e Recovery
$ barman backup -j 4 pg11
BARMAN
Principais recursos:
● Múltiplos servidores PostgreSQL
● Políticas de retenção para backupse arquivosWAL
● Backupscatalogados
● Diagnóstico do servidor parabackup
BARMAN Backup Catalogado
BARMAN
Principais recursos:
● Realocação de PGDATA e tablespacesno tempo de recuperação
● Suporte pararecuperação local e remota (via SSH)
● Point-in-Time (PITR)
BARMAN
Recomendações:
● Instalar o Barman em um servidor dedicado
● Não compartilhe a mesmastorage com seu servidor PostgreSQL
● Monitore sempre o seu backup
BARMAN
Requisitos:
● Linux/Unix
● Python >= 3.4
● PostgreSQL >= 8.3
● rsync >= 3.0.4 (optional for PostgreSQL >= 9.2)
BARMAN SSH/ rsync
● O WAL é enviado pelo barman-wal-archive (Barman 2.6)
● Antessó via rsync
● Conexão do PostgreSQL (protocolo streaming replication)
● Método pg_basebackup e pg_receivexlog
● Arquitetura maisrobusta
BARMAN Streaming LIBPQ
BARMAN
Criação e troca de chave pública
$ ssh-keygen
$ ssh-copy-id -i ~/.ssh/id_rsa.pub postgres@srv-postgresql
$ ssh postgres@srv-postgresql
$ chcon -t ssh_home_t ~/.ssh/ -R
BARMAN PostgreSQL
Criação e troca de chave pública
$ ssh-keygen
$ ssh-copy-id -i ~/.ssh/id_rsa.pub barman@srv-barman
$ ssh barman@srv-barman
$ chcon -t ssh_home_t ~/.ssh/ -R
BARMAN PostgreSQL
Criação do usuário barman como super usuário e streaming_barman parareplicação:
$ postgres@srv-postgresql$ createuser -s-Pbarman
$ postgres@srv-postgresql$ createuser -s-Pstreaming_barman -- replication
pg_hba.conf
PostgreSQL.conf
BARMAN
O arquivo de configuração principal contém opçõesgerais,como diretório
principal,usuário do sistemae arquivo de log: /etc/barman.conf
BARMAN
Osarquivosde configuração do servidor,um paracadaservidor cujo
backup é feito pelo Barman,estão localizadosno diretório
/etc/barman.d
devem ter um sufixo .conf
EX: pg10.conf
pg11.conf
Política de Retenção
Redundância
Janelade Restauração
BARMAN
Lista de servidores ativosque foram configurados
BARMAN Check
BARMAN Check
BARMAN Backup SSH
BARMAN Backup Streaming
Backups
Backup
Backup Detalhado
BARMAN
BARMAN Recover
BARMAN
Considerações Finais
Obrigado!

Mais conteúdo relacionado

Mais procurados

Fine Tuning and Enhancing Performance of Apache Spark Jobs
Fine Tuning and Enhancing Performance of Apache Spark JobsFine Tuning and Enhancing Performance of Apache Spark Jobs
Fine Tuning and Enhancing Performance of Apache Spark JobsDatabricks
 
Understanding PostgreSQL LW Locks
Understanding PostgreSQL LW LocksUnderstanding PostgreSQL LW Locks
Understanding PostgreSQL LW LocksJignesh Shah
 
Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Flink Forward
 
Apache Spark Core—Deep Dive—Proper Optimization
Apache Spark Core—Deep Dive—Proper OptimizationApache Spark Core—Deep Dive—Proper Optimization
Apache Spark Core—Deep Dive—Proper OptimizationDatabricks
 
Improving SparkSQL Performance by 30%: How We Optimize Parquet Pushdown and P...
Improving SparkSQL Performance by 30%: How We Optimize Parquet Pushdown and P...Improving SparkSQL Performance by 30%: How We Optimize Parquet Pushdown and P...
Improving SparkSQL Performance by 30%: How We Optimize Parquet Pushdown and P...Databricks
 
PostgreSQL Extensions: A deeper look
PostgreSQL Extensions:  A deeper lookPostgreSQL Extensions:  A deeper look
PostgreSQL Extensions: A deeper lookJignesh Shah
 
PostgreSQL Deep Internal
PostgreSQL Deep InternalPostgreSQL Deep Internal
PostgreSQL Deep InternalEXEM
 
PostgreSQLの冗長化について
PostgreSQLの冗長化についてPostgreSQLの冗長化について
PostgreSQLの冗長化についてSoudai Sone
 
10 Problems with your RMAN backup script - whitepaper
10 Problems with your RMAN backup script - whitepaper10 Problems with your RMAN backup script - whitepaper
10 Problems with your RMAN backup script - whitepaperYury Velikanov
 
PostgreSQL運用管理入門
PostgreSQL運用管理入門PostgreSQL運用管理入門
PostgreSQL運用管理入門Yoshiyuki Asaba
 
PostgreSQL DBのバックアップを一元化しよう
PostgreSQL DBのバックアップを一元化しようPostgreSQL DBのバックアップを一元化しよう
PostgreSQL DBのバックアップを一元化しようYukiya Hayashi
 
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性Ohyama Masanori
 
PostgreSQL Administration for System Administrators
PostgreSQL Administration for System AdministratorsPostgreSQL Administration for System Administrators
PostgreSQL Administration for System AdministratorsCommand Prompt., Inc
 
Autoscaling Flink with Reactive Mode
Autoscaling Flink with Reactive ModeAutoscaling Flink with Reactive Mode
Autoscaling Flink with Reactive ModeFlink Forward
 
PostgreSQL + pgpool構成におけるリカバリ
PostgreSQL + pgpool構成におけるリカバリPostgreSQL + pgpool構成におけるリカバリ
PostgreSQL + pgpool構成におけるリカバリhiroin0
 
Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Masayuki Ozawa
 
Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput Grant McAlister
 
How does PostgreSQL work with disks: a DBA's checklist in detail. PGConf.US 2015
How does PostgreSQL work with disks: a DBA's checklist in detail. PGConf.US 2015How does PostgreSQL work with disks: a DBA's checklist in detail. PGConf.US 2015
How does PostgreSQL work with disks: a DBA's checklist in detail. PGConf.US 2015PostgreSQL-Consulting
 

Mais procurados (20)

Fine Tuning and Enhancing Performance of Apache Spark Jobs
Fine Tuning and Enhancing Performance of Apache Spark JobsFine Tuning and Enhancing Performance of Apache Spark Jobs
Fine Tuning and Enhancing Performance of Apache Spark Jobs
 
Understanding PostgreSQL LW Locks
Understanding PostgreSQL LW LocksUnderstanding PostgreSQL LW Locks
Understanding PostgreSQL LW Locks
 
Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...
 
Apache Spark Core—Deep Dive—Proper Optimization
Apache Spark Core—Deep Dive—Proper OptimizationApache Spark Core—Deep Dive—Proper Optimization
Apache Spark Core—Deep Dive—Proper Optimization
 
Improving SparkSQL Performance by 30%: How We Optimize Parquet Pushdown and P...
Improving SparkSQL Performance by 30%: How We Optimize Parquet Pushdown and P...Improving SparkSQL Performance by 30%: How We Optimize Parquet Pushdown and P...
Improving SparkSQL Performance by 30%: How We Optimize Parquet Pushdown and P...
 
PostgreSQL Extensions: A deeper look
PostgreSQL Extensions:  A deeper lookPostgreSQL Extensions:  A deeper look
PostgreSQL Extensions: A deeper look
 
PostgreSQL Deep Internal
PostgreSQL Deep InternalPostgreSQL Deep Internal
PostgreSQL Deep Internal
 
PostgreSQLの冗長化について
PostgreSQLの冗長化についてPostgreSQLの冗長化について
PostgreSQLの冗長化について
 
10 Problems with your RMAN backup script - whitepaper
10 Problems with your RMAN backup script - whitepaper10 Problems with your RMAN backup script - whitepaper
10 Problems with your RMAN backup script - whitepaper
 
PostgreSQL運用管理入門
PostgreSQL運用管理入門PostgreSQL運用管理入門
PostgreSQL運用管理入門
 
PostgreSQL DBのバックアップを一元化しよう
PostgreSQL DBのバックアップを一元化しようPostgreSQL DBのバックアップを一元化しよう
PostgreSQL DBのバックアップを一元化しよう
 
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
 
PostgreSQL Administration for System Administrators
PostgreSQL Administration for System AdministratorsPostgreSQL Administration for System Administrators
PostgreSQL Administration for System Administrators
 
Autoscaling Flink with Reactive Mode
Autoscaling Flink with Reactive ModeAutoscaling Flink with Reactive Mode
Autoscaling Flink with Reactive Mode
 
PostgreSQL + pgpool構成におけるリカバリ
PostgreSQL + pgpool構成におけるリカバリPostgreSQL + pgpool構成におけるリカバリ
PostgreSQL + pgpool構成におけるリカバリ
 
Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎
 
PostgreSQL Replication Tutorial
PostgreSQL Replication TutorialPostgreSQL Replication Tutorial
PostgreSQL Replication Tutorial
 
Backup and-recovery2
Backup and-recovery2Backup and-recovery2
Backup and-recovery2
 
Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput
 
How does PostgreSQL work with disks: a DBA's checklist in detail. PGConf.US 2015
How does PostgreSQL work with disks: a DBA's checklist in detail. PGConf.US 2015How does PostgreSQL work with disks: a DBA's checklist in detail. PGConf.US 2015
How does PostgreSQL work with disks: a DBA's checklist in detail. PGConf.US 2015
 

Semelhante a Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019

PostgreSQL - Visão Geral - Pedro Vieira
PostgreSQL - Visão Geral - Pedro VieiraPostgreSQL - Visão Geral - Pedro Vieira
PostgreSQL - Visão Geral - Pedro VieiraPedro Fernandes Vieira
 
High Avaiability Architeture with Oracle Data Guard Broker
High Avaiability Architeture with Oracle Data Guard BrokerHigh Avaiability Architeture with Oracle Data Guard Broker
High Avaiability Architeture with Oracle Data Guard BrokerJonatan Ritter
 
Planejamento de Capacidade e Desempenho de Backup em Disco
Planejamento de Capacidade e Desempenho de Backup em DiscoPlanejamento de Capacidade e Desempenho de Backup em Disco
Planejamento de Capacidade e Desempenho de Backup em DiscoKleber Silva
 
Percona XtraBackup
Percona XtraBackupPercona XtraBackup
Percona XtraBackupWebgoal
 
Estrategias de backup e recovery
Estrategias de backup e recoveryEstrategias de backup e recovery
Estrategias de backup e recoveryRodrigo Crespi
 
ENPO - RMAN: Vilão ou Heroí?
ENPO - RMAN: Vilão ou Heroí?ENPO - RMAN: Vilão ou Heroí?
ENPO - RMAN: Vilão ou Heroí?Rodrigo Almeida
 
Salvaguarda e Recuperação da Base de Dados | Oracle
Salvaguarda e Recuperação da Base de Dados | OracleSalvaguarda e Recuperação da Base de Dados | Oracle
Salvaguarda e Recuperação da Base de Dados | OracleCarlos Pampulim Caldeira
 
Estratégia de backup - RMAN
Estratégia de backup - RMANEstratégia de backup - RMAN
Estratégia de backup - RMANEduardo Legatti
 
Desmistificando Replicação no PostgreSQL
Desmistificando Replicação no PostgreSQLDesmistificando Replicação no PostgreSQL
Desmistificando Replicação no PostgreSQLEuler Taveira
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoelliando dias
 
Alta disponibilidade com PostgreSQL
Alta disponibilidade com PostgreSQLAlta disponibilidade com PostgreSQL
Alta disponibilidade com PostgreSQLLeonardo Cezar
 
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Wagner Bianchi
 
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Tiago Hillebrandt
 
Backup Online no MySQL com Percona Xtrabackup
Backup Online no MySQL com Percona XtrabackupBackup Online no MySQL com Percona Xtrabackup
Backup Online no MySQL com Percona XtrabackupMarcelo Altmann
 
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA CareerMarcus Vinicius Miguel Pedro
 
Um milhao de usuários simultâneos
Um milhao de usuários simultâneosUm milhao de usuários simultâneos
Um milhao de usuários simultâneosFernando Ike
 

Semelhante a Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019 (20)

PostgreSQL - Visão Geral - Pedro Vieira
PostgreSQL - Visão Geral - Pedro VieiraPostgreSQL - Visão Geral - Pedro Vieira
PostgreSQL - Visão Geral - Pedro Vieira
 
High Avaiability Architeture with Oracle Data Guard Broker
High Avaiability Architeture with Oracle Data Guard BrokerHigh Avaiability Architeture with Oracle Data Guard Broker
High Avaiability Architeture with Oracle Data Guard Broker
 
Planejamento de Capacidade e Desempenho de Backup em Disco
Planejamento de Capacidade e Desempenho de Backup em DiscoPlanejamento de Capacidade e Desempenho de Backup em Disco
Planejamento de Capacidade e Desempenho de Backup em Disco
 
Percona XtraBackup
Percona XtraBackupPercona XtraBackup
Percona XtraBackup
 
2012 - Veris - DBA Career and Oracle Database
2012 - Veris - DBA Career and Oracle Database2012 - Veris - DBA Career and Oracle Database
2012 - Veris - DBA Career and Oracle Database
 
Treinamento Data Guard
Treinamento Data GuardTreinamento Data Guard
Treinamento Data Guard
 
Estrategias de backup e recovery
Estrategias de backup e recoveryEstrategias de backup e recovery
Estrategias de backup e recovery
 
ENPO - RMAN: Vilão ou Heroí?
ENPO - RMAN: Vilão ou Heroí?ENPO - RMAN: Vilão ou Heroí?
ENPO - RMAN: Vilão ou Heroí?
 
Salvaguarda e Recuperação da Base de Dados | Oracle
Salvaguarda e Recuperação da Base de Dados | OracleSalvaguarda e Recuperação da Base de Dados | Oracle
Salvaguarda e Recuperação da Base de Dados | Oracle
 
Vamos conversar sobre cache
Vamos conversar sobre cacheVamos conversar sobre cache
Vamos conversar sobre cache
 
Estratégia de backup - RMAN
Estratégia de backup - RMANEstratégia de backup - RMAN
Estratégia de backup - RMAN
 
Desmistificando Replicação no PostgreSQL
Desmistificando Replicação no PostgreSQLDesmistificando Replicação no PostgreSQL
Desmistificando Replicação no PostgreSQL
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
 
Alta disponibilidade com PostgreSQL
Alta disponibilidade com PostgreSQLAlta disponibilidade com PostgreSQL
Alta disponibilidade com PostgreSQL
 
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
 
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
 
Backup Online no MySQL com Percona Xtrabackup
Backup Online no MySQL com Percona XtrabackupBackup Online no MySQL com Percona Xtrabackup
Backup Online no MySQL com Percona Xtrabackup
 
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
 
Um milhao de usuários simultâneos
Um milhao de usuários simultâneosUm milhao de usuários simultâneos
Um milhao de usuários simultâneos
 
Workshop - Administração de SGBD Oracle
Workshop - Administração de SGBD OracleWorkshop - Administração de SGBD Oracle
Workshop - Administração de SGBD Oracle
 

Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019