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

Oracle Golden Gate Interview Questions
Oracle Golden Gate Interview QuestionsOracle Golden Gate Interview Questions
Oracle Golden Gate Interview QuestionsArun Sharma
 
Linux kernel debugging
Linux kernel debuggingLinux kernel debugging
Linux kernel debugginglibfetion
 
PostgreSQL Extensions: A deeper look
PostgreSQL Extensions:  A deeper lookPostgreSQL Extensions:  A deeper look
PostgreSQL Extensions: A deeper lookJignesh Shah
 
Desmistificando Replicação no PostgreSQL
Desmistificando Replicação no PostgreSQLDesmistificando Replicação no PostgreSQL
Desmistificando Replicação no PostgreSQLEuler Taveira
 
Webinar: PostgreSQL continuous backup and PITR with Barman
Webinar: PostgreSQL continuous backup and PITR with BarmanWebinar: PostgreSQL continuous backup and PITR with Barman
Webinar: PostgreSQL continuous backup and PITR with BarmanGabriele Bartolini
 
BlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for CephBlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for CephSage Weil
 
PostgreSQL continuous backup and PITR with Barman
 PostgreSQL continuous backup and PITR with Barman PostgreSQL continuous backup and PITR with Barman
PostgreSQL continuous backup and PITR with BarmanEDB
 
Your tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
Your tuning arsenal: AWR, ADDM, ASH, Metrics and AdvisorsYour tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
Your tuning arsenal: AWR, ADDM, ASH, Metrics and AdvisorsJohn Kanagaraj
 
PostgreSQL Streaming Replication Cheatsheet
PostgreSQL Streaming Replication CheatsheetPostgreSQL Streaming Replication Cheatsheet
PostgreSQL Streaming Replication CheatsheetAlexey Lesovsky
 
OSMC 2021 | pg_stat_monitor: A cool extension for better database (PostgreSQL...
OSMC 2021 | pg_stat_monitor: A cool extension for better database (PostgreSQL...OSMC 2021 | pg_stat_monitor: A cool extension for better database (PostgreSQL...
OSMC 2021 | pg_stat_monitor: A cool extension for better database (PostgreSQL...NETWAYS
 
Estratégia de backup - RMAN
Estratégia de backup - RMANEstratégia de backup - RMAN
Estratégia de backup - RMANEduardo Legatti
 
PostgreSQL on EXT4, XFS, BTRFS and ZFS
PostgreSQL on EXT4, XFS, BTRFS and ZFSPostgreSQL on EXT4, XFS, BTRFS and ZFS
PostgreSQL on EXT4, XFS, BTRFS and ZFSTomas Vondra
 
PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PGConf APAC
 
Postgresql database administration volume 1
Postgresql database administration volume 1Postgresql database administration volume 1
Postgresql database administration volume 1Federico Campoli
 
PostgreSQL Replication High Availability Methods
PostgreSQL Replication High Availability MethodsPostgreSQL Replication High Availability Methods
PostgreSQL Replication High Availability MethodsMydbops
 
Using Wildcards with rsyslog's File Monitor imfile
Using Wildcards with rsyslog's File Monitor imfileUsing Wildcards with rsyslog's File Monitor imfile
Using Wildcards with rsyslog's File Monitor imfileRainer Gerhards
 
PostgreSQL- An Introduction
PostgreSQL- An IntroductionPostgreSQL- An Introduction
PostgreSQL- An IntroductionSmita Prasad
 
Backup & recovery with rman
Backup & recovery with rmanBackup & recovery with rman
Backup & recovery with rmanitsabidhussain
 

Mais procurados (20)

Oracle Golden Gate Interview Questions
Oracle Golden Gate Interview QuestionsOracle Golden Gate Interview Questions
Oracle Golden Gate Interview Questions
 
Linux kernel debugging
Linux kernel debuggingLinux kernel debugging
Linux kernel debugging
 
PostgreSQL Extensions: A deeper look
PostgreSQL Extensions:  A deeper lookPostgreSQL Extensions:  A deeper look
PostgreSQL Extensions: A deeper look
 
Desmistificando Replicação no PostgreSQL
Desmistificando Replicação no PostgreSQLDesmistificando Replicação no PostgreSQL
Desmistificando Replicação no PostgreSQL
 
Webinar: PostgreSQL continuous backup and PITR with Barman
Webinar: PostgreSQL continuous backup and PITR with BarmanWebinar: PostgreSQL continuous backup and PITR with Barman
Webinar: PostgreSQL continuous backup and PITR with Barman
 
PostgreSQL and RAM usage
PostgreSQL and RAM usagePostgreSQL and RAM usage
PostgreSQL and RAM usage
 
BlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for CephBlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for Ceph
 
PostgreSQL continuous backup and PITR with Barman
 PostgreSQL continuous backup and PITR with Barman PostgreSQL continuous backup and PITR with Barman
PostgreSQL continuous backup and PITR with Barman
 
Your tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
Your tuning arsenal: AWR, ADDM, ASH, Metrics and AdvisorsYour tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
Your tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
 
PostgreSQL Streaming Replication Cheatsheet
PostgreSQL Streaming Replication CheatsheetPostgreSQL Streaming Replication Cheatsheet
PostgreSQL Streaming Replication Cheatsheet
 
OSMC 2021 | pg_stat_monitor: A cool extension for better database (PostgreSQL...
OSMC 2021 | pg_stat_monitor: A cool extension for better database (PostgreSQL...OSMC 2021 | pg_stat_monitor: A cool extension for better database (PostgreSQL...
OSMC 2021 | pg_stat_monitor: A cool extension for better database (PostgreSQL...
 
Backup and-recovery2
Backup and-recovery2Backup and-recovery2
Backup and-recovery2
 
Estratégia de backup - RMAN
Estratégia de backup - RMANEstratégia de backup - RMAN
Estratégia de backup - RMAN
 
PostgreSQL on EXT4, XFS, BTRFS and ZFS
PostgreSQL on EXT4, XFS, BTRFS and ZFSPostgreSQL on EXT4, XFS, BTRFS and ZFS
PostgreSQL on EXT4, XFS, BTRFS and ZFS
 
PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs
 
Postgresql database administration volume 1
Postgresql database administration volume 1Postgresql database administration volume 1
Postgresql database administration volume 1
 
PostgreSQL Replication High Availability Methods
PostgreSQL Replication High Availability MethodsPostgreSQL Replication High Availability Methods
PostgreSQL Replication High Availability Methods
 
Using Wildcards with rsyslog's File Monitor imfile
Using Wildcards with rsyslog's File Monitor imfileUsing Wildcards with rsyslog's File Monitor imfile
Using Wildcards with rsyslog's File Monitor imfile
 
PostgreSQL- An Introduction
PostgreSQL- An IntroductionPostgreSQL- An Introduction
PostgreSQL- An Introduction
 
Backup & recovery with rman
Backup & recovery with rmanBackup & recovery with rman
Backup & recovery with rman
 

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
 
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
 
Cloud PostgreSQL em alta performance
Cloud PostgreSQL em alta performanceCloud PostgreSQL em alta performance
Cloud PostgreSQL em alta performanceSaveincloud
 
24HOP Session - Database Administration Strategies
24HOP Session - Database Administration Strategies24HOP Session - Database Administration Strategies
24HOP Session - Database Administration StrategiesMurilo Miranda
 

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
 
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
 
Cloud PostgreSQL em alta performance
Cloud PostgreSQL em alta performanceCloud PostgreSQL em alta performance
Cloud PostgreSQL em alta performance
 
24HOP Session - Database Administration Strategies
24HOP Session - Database Administration Strategies24HOP Session - Database Administration Strategies
24HOP Session - Database Administration Strategies
 

Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019