SlideShare uma empresa Scribd logo
1 de 38
Baixar para ler offline
© 2020 Percona1
Marcelo Altmann
Backup para MySQL
Software Engineer
MySQL Brazil Virtual Meetup
23/07/2020
© 2020 Percona2
Sobre Mim
© 2020 Percona3
Marcelo Altmann
▪Desenvolvedor @ percona
• Engenheiro de Suporte Senior @ percona
• Líder Técnico @ percona
• MySQL DBA @ IEDR (CCTLD Irlanda)
▪Tecnologo em Sistemas para
Internet @ Feevale
▪Oracle ACE Associate
▪blog.marceloaltmann.com
▪Certificaçoes
• OCP, MySQL 5.7 Database Administrator
• OCP, MySQL 5.6 Database Administrator
• OCP, MySQL 5.6 Developer
• OCP, MySQL 5 Database Administrator
• OCP, MySQL 5 Developer
• OCP, MySQL 5.0/5.1/5.5
© 2020 Percona4
Por que fazer backup?
© 2020 Percona5
Por que fazer backup? Motivo
▪Segurança dos dados
▪Provisionar replicas
▪Testar software em ambientes de homologação / teste
▪Point in time recovery
▪Disaster recovery
• Corrupção de dados
• Invasão do banco / sistema
• Bugs no software
• Falhas de hardware
© 2020 Percona6
Por que fazer backup? Objetivo
▪Estar preparado para o maior leque de possibilidades
▪Minimizar Downtime
© 2020 Percona7
Tipos de backup
© 2020 Percona8
Replicação como backup? Sim
▪Crashes
▪Corrupção física
▪Falhas de hardware
• CPU
• Disco
• RAM
• Rede
© 2020 Percona9
Replicação como backup? Não
▪Bugs na aplicação
▪Database hackeada
▪Erro operacional
© 2020 Percona10
Replicação como backup? Não
▪Erro operacional
• DROP sem WHERE
• Ambiente de produção?!?!?!
Achei que estava conectado no DEV
© 2020 Percona11
Lógico
▪Estrutura e dados salvos em plain-text
▪CREATE DATABASE / TABLE / INSERT INTO …
▪Pode ser usado facilmente para restore seletivo
▪Não carrega fragmentação / corrupção
▪Recria toda a estrutura física do arquivo no disco.
▪Restore mais lento
▪Ferramentas: mysqldump / my[dumper|loader] / mysqlpump
© 2020 Percona12
Físico
▪Cópia física do arquivos do banco
▪Restore rápido
▪Um pouco mais complicado para restore seletivo
▪Corrupção e Fragmentação são levadas a frente
▪Ferramentas: Percona Xtrabackup / MEB / MariaBackup / snapshot / rsync
© 2020 Percona13
Diferencial
▪Cópia completa do banco
▪Cada cópia diferencial contém todos os dados desde o backup completo
• Segunda: Completo
• Terça: Diferencial desde segunda
• Quarta: Diferencial desde segunda
• Quinta: Diferencial desde segunda
© 2020 Percona14
Diferencial
▪Restore evento na quinta feira:
• Completo de segunda
• Diferencial tirado na quinta
© 2020 Percona15
Incremental
▪Cópia completa do banco
▪Cada cópia incremental contém os dados desde o último backup
• Segunda: Completo
• Terça: incremental desde segunda
• Quarta: incremental desde terça
• Quinta: incremental desde quarta
© 2020 Percona16
Incremental
▪Restore evento na quinta feira:
• Completo tirado na segunda
• Aplicar incremental de terça no completo de segunda
• Aplicar incremental de quarta no backup segunda+terça
• Aplicar incremental de quinta no backup segunda+terça+quarta
© 2020 Percona17
Backup Pronto ?
© 2020 Percona18
N Ã O ! ! !
© 2020 Percona19
Compactar
▪Ocupar menos espaço (pode se guardar mais backups)
▪Quando feito stream, requer menos tráfego de rede
▪Aumenta o tempo tanto de backup quanto restore
▪PXB (qpress):
• xtrabackup --backup --compress 
--parallel=4 --compress-threads=4 --target-dir=/backup/
▪Zip / gzip / bzip / . . .
© 2020 Percona20
Criptografar
▪Mantém o backup seguro a acessos indesejados
▪Openssl / GPG
▪PXB
• xtrabackup --backup --parallel=4 --encrypt-threads=4 --encrypt=AES256 
--encrypt-key-file=/data/backups/keyfile --target-dir=/data/backups
• xtrabackup --parallel=4 --decrypt=AES256 
--encrypt-key-file=/data/backups/keyfile --target-dir=/data/backups
© 2020 Percona21
Armazenar
© 2020 Percona22
Armazenar
▪Onde armazenar os backups?
• Mesmo servidor?
© 2020 Percona23
Armazenar
▪Onde armazenar os backups?
• Mesmo servidor?
© 2020 Percona24
Armazenar
▪Onde armazenar os backups?
• Mesmo servidor?
• Mesmo datacenter?
© 2020 Percona25
Armazenar
▪Onde armazenar os backups?
• Mesmo servidor?
• Mesmo datacenter?
• Mesma região ?
© 2020 Percona26
Armazenar
▪Onde armazenar os backups?
• Mesmo servidor?
• Mesmo datacenter?
• Mesma região ?
▪Qual tipo / magnitude de desastre natural meus dados devem sobreviver?
© 2020 Percona27
A T E N Ç Ã O ! ! !
I M P O R T A N T E ! ! !
© 2020 Percona28
Restaurar
© 2020 Percona29
Restaurar
▪Parte mais importante de uma estratégia de backup
▪Ter backup e não testar o restore é o mesmo que não ter backup!
▪Consigo restaurar ?
▪Qual o processo para restaurar?
• Copiar da origem e mandar pro destino
• Descriptografar / descompactar / preparar / subir a base
▪Quanto tempo leva ?
© 2020 Percona30
Validar o backup
© 2020 Percona31
Validar o backup
▪Validar que o backup realmente tem os dados que deve ter
▪Restaurar o backup em um servidor/vm/container zerado
▪Configurar o servidor como slave do master original
• Quanto tempo leva para ficar em sincronia?
▪Meu dado está consistente?
▪Rodar pt-table-checksum
▪Testar PITR (Point In Time Recovery)
© 2020 Percona32
Backup de logs binarios
© 2020 Percona33
Backup de logs binarios
▪Possibilita restaurar o banco de dados a um ponto específico no passado
• DELETE sem WHERE
• Aplicação corrompeu/destruiu dados
▪Mysqlbinlog
• mysqlbinlog --read-from-remote-server --stop-never --raw
▪Maxscale binlog server
© 2020 Percona34
Período de retenção
© 2020 Percona35
Período de retenção
▪Quanto tempo no passado deve conseguir voltar meus dados?
▪Como armazenar este dado
• Mídias devagar
▪Esteja preparado para restaurar
© 2020 Percona36
Perguntas?
© 2020 Percona37
PXB DEMO TIME!!!
DATABASE PERFORMANCE
MATTERS
Database Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters
Obrigado!

Mais conteúdo relacionado

Mais procurados

Logical Replication in PostgreSQL
Logical Replication in PostgreSQLLogical Replication in PostgreSQL
Logical Replication in PostgreSQLEDB
 
Vmlinux: anatomy of bzimage and how x86 64 processor is booted
Vmlinux: anatomy of bzimage and how x86 64 processor is bootedVmlinux: anatomy of bzimage and how x86 64 processor is booted
Vmlinux: anatomy of bzimage and how x86 64 processor is bootedAdrian Huang
 
High-speed Database Throughput Using Apache Arrow Flight SQL
High-speed Database Throughput Using Apache Arrow Flight SQLHigh-speed Database Throughput Using Apache Arrow Flight SQL
High-speed Database Throughput Using Apache Arrow Flight SQLScyllaDB
 
Percona server for MySQL 제품 소개
Percona server for MySQL 제품 소개Percona server for MySQL 제품 소개
Percona server for MySQL 제품 소개NeoClova
 
COSCUP 2020 RISC-V 32 bit linux highmem porting
COSCUP 2020 RISC-V 32 bit linux highmem portingCOSCUP 2020 RISC-V 32 bit linux highmem porting
COSCUP 2020 RISC-V 32 bit linux highmem portingEric Lin
 
InnoDB Internal
InnoDB InternalInnoDB Internal
InnoDB Internalmysqlops
 
The hidden power of network maps on Zabbix
The hidden power of network maps on ZabbixThe hidden power of network maps on Zabbix
The hidden power of network maps on ZabbixRicardo Santos
 
Percona Xtrabackup Best Practices
Percona Xtrabackup Best PracticesPercona Xtrabackup Best Practices
Percona Xtrabackup Best PracticesMarcelo Altmann
 
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
 
Building a SIMD Supported Vectorized Native Engine for Spark SQL
Building a SIMD Supported Vectorized Native Engine for Spark SQLBuilding a SIMD Supported Vectorized Native Engine for Spark SQL
Building a SIMD Supported Vectorized Native Engine for Spark SQLDatabricks
 
ODA Backup Restore Utility & ODA Rescue Live Disk
ODA Backup Restore Utility & ODA Rescue Live DiskODA Backup Restore Utility & ODA Rescue Live Disk
ODA Backup Restore Utility & ODA Rescue Live DiskRuggero Citton
 
Page cache in Linux kernel
Page cache in Linux kernelPage cache in Linux kernel
Page cache in Linux kernelAdrian Huang
 
Percona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsPercona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsMydbops
 
MySQL Server Settings Tuning
MySQL Server Settings TuningMySQL Server Settings Tuning
MySQL Server Settings Tuningguest5ca94b
 
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...xKinAnx
 
A Technical Introduction to WiredTiger
A Technical Introduction to WiredTigerA Technical Introduction to WiredTiger
A Technical Introduction to WiredTigerMongoDB
 
Understanding and tuning WiredTiger, the new high performance database engine...
Understanding and tuning WiredTiger, the new high performance database engine...Understanding and tuning WiredTiger, the new high performance database engine...
Understanding and tuning WiredTiger, the new high performance database engine...Ontico
 

Mais procurados (20)

Logical Replication in PostgreSQL
Logical Replication in PostgreSQLLogical Replication in PostgreSQL
Logical Replication in PostgreSQL
 
Vmlinux: anatomy of bzimage and how x86 64 processor is booted
Vmlinux: anatomy of bzimage and how x86 64 processor is bootedVmlinux: anatomy of bzimage and how x86 64 processor is booted
Vmlinux: anatomy of bzimage and how x86 64 processor is booted
 
High-speed Database Throughput Using Apache Arrow Flight SQL
High-speed Database Throughput Using Apache Arrow Flight SQLHigh-speed Database Throughput Using Apache Arrow Flight SQL
High-speed Database Throughput Using Apache Arrow Flight SQL
 
Percona server for MySQL 제품 소개
Percona server for MySQL 제품 소개Percona server for MySQL 제품 소개
Percona server for MySQL 제품 소개
 
COSCUP 2020 RISC-V 32 bit linux highmem porting
COSCUP 2020 RISC-V 32 bit linux highmem portingCOSCUP 2020 RISC-V 32 bit linux highmem porting
COSCUP 2020 RISC-V 32 bit linux highmem porting
 
InnoDB Internal
InnoDB InternalInnoDB Internal
InnoDB Internal
 
The hidden power of network maps on Zabbix
The hidden power of network maps on ZabbixThe hidden power of network maps on Zabbix
The hidden power of network maps on Zabbix
 
Percona Xtrabackup Best Practices
Percona Xtrabackup Best PracticesPercona Xtrabackup Best Practices
Percona Xtrabackup Best Practices
 
Presto
PrestoPresto
Presto
 
Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput Tuning PostgreSQL for High Write Throughput
Tuning PostgreSQL for High Write Throughput
 
Building a SIMD Supported Vectorized Native Engine for Spark SQL
Building a SIMD Supported Vectorized Native Engine for Spark SQLBuilding a SIMD Supported Vectorized Native Engine for Spark SQL
Building a SIMD Supported Vectorized Native Engine for Spark SQL
 
ODA Backup Restore Utility & ODA Rescue Live Disk
ODA Backup Restore Utility & ODA Rescue Live DiskODA Backup Restore Utility & ODA Rescue Live Disk
ODA Backup Restore Utility & ODA Rescue Live Disk
 
Page cache in Linux kernel
Page cache in Linux kernelPage cache in Linux kernel
Page cache in Linux kernel
 
Percona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsPercona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient Backups
 
Spark tuning
Spark tuningSpark tuning
Spark tuning
 
MySQL Server Settings Tuning
MySQL Server Settings TuningMySQL Server Settings Tuning
MySQL Server Settings Tuning
 
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
Ibm spectrum scale fundamentals workshop for americas part 4 spectrum scale_r...
 
A Technical Introduction to WiredTiger
A Technical Introduction to WiredTigerA Technical Introduction to WiredTiger
A Technical Introduction to WiredTiger
 
Understanding and tuning WiredTiger, the new high performance database engine...
Understanding and tuning WiredTiger, the new high performance database engine...Understanding and tuning WiredTiger, the new high performance database engine...
Understanding and tuning WiredTiger, the new high performance database engine...
 
MyRocks Deep Dive
MyRocks Deep DiveMyRocks Deep Dive
MyRocks Deep Dive
 

Semelhante a Backup para MySQL

Entendendo o ZDLRA - Oracle Zero Data Loss Recovery Appliance e garantindo rp...
Entendendo o ZDLRA - Oracle Zero Data Loss Recovery Appliance e garantindo rp...Entendendo o ZDLRA - Oracle Zero Data Loss Recovery Appliance e garantindo rp...
Entendendo o ZDLRA - Oracle Zero Data Loss Recovery Appliance e garantindo rp...Weligton Pinto
 
Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019
Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019
Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019CLEYSSON LIMA
 
Percona XtraBackup
Percona XtraBackupPercona XtraBackup
Percona XtraBackupWebgoal
 
Solução double take mki
Solução double take mkiSolução double take mki
Solução double take mkidlevartoski
 
Gerenciamento de Backup e Recovery com o Barman
Gerenciamento de Backup e Recovery com o BarmanGerenciamento de Backup e Recovery com o Barman
Gerenciamento de Backup e Recovery com o BarmanCaio Oliveira
 
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational DatabasesMarcus Vinicius Miguel Pedro
 
Planejamento (e recuperação) de Desastres por Rodrigo Campos
Planejamento (e recuperação) de Desastres por Rodrigo CamposPlanejamento (e recuperação) de Desastres por Rodrigo Campos
Planejamento (e recuperação) de Desastres por Rodrigo CamposJoao Galdino Mello de Souza
 
Apresentação de produtos - SaveinCloud .pptx.pdf
Apresentação de produtos - SaveinCloud .pptx.pdfApresentação de produtos - SaveinCloud .pptx.pdf
Apresentação de produtos - SaveinCloud .pptx.pdfAlexSantos8560
 
Apresentacao Veeam Backup & Replication
Apresentacao Veeam Backup & ReplicationApresentacao Veeam Backup & Replication
Apresentacao Veeam Backup & ReplicationBlue Solutions
 
Migre seu banco de dados para a nuvem. Pergunte-me como!
Migre seu banco de dados para a nuvem. Pergunte-me como!Migre seu banco de dados para a nuvem. Pergunte-me como!
Migre seu banco de dados para a nuvem. Pergunte-me como!Fabio Telles Rodriguez
 
Estrategias de backup e recovery
Estrategias de backup e recoveryEstrategias de backup e recovery
Estrategias de backup e recoveryRodrigo Crespi
 
Introdução ao Windows Azure - Sessão 1 (mais teórica)
Introdução ao Windows Azure - Sessão 1 (mais teórica)Introdução ao Windows Azure - Sessão 1 (mais teórica)
Introdução ao Windows Azure - Sessão 1 (mais teórica)Giovanni Bassi
 
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...DevCamp Campinas
 
10 dicas eficazes para fazer backup online
10 dicas eficazes para fazer backup online10 dicas eficazes para fazer backup online
10 dicas eficazes para fazer backup onlineLuiz Henrique
 

Semelhante a Backup para MySQL (20)

GDB e Análise de Bugs
GDB e Análise de BugsGDB e Análise de Bugs
GDB e Análise de Bugs
 
Entendendo o ZDLRA - Oracle Zero Data Loss Recovery Appliance e garantindo rp...
Entendendo o ZDLRA - Oracle Zero Data Loss Recovery Appliance e garantindo rp...Entendendo o ZDLRA - Oracle Zero Data Loss Recovery Appliance e garantindo rp...
Entendendo o ZDLRA - Oracle Zero Data Loss Recovery Appliance e garantindo rp...
 
Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019
Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019
Gerenciamento de Backup e Recovery com Barman PGConfBrasil2019
 
ArcServe - UDP
ArcServe - UDPArcServe - UDP
ArcServe - UDP
 
Percona XtraBackup
Percona XtraBackupPercona XtraBackup
Percona XtraBackup
 
Solução double take mki
Solução double take mkiSolução double take mki
Solução double take mki
 
ArcServe in the AWS Cloud - part II
ArcServe in the AWS Cloud - part IIArcServe in the AWS Cloud - part II
ArcServe in the AWS Cloud - part II
 
Gerenciamento de Backup e Recovery com o Barman
Gerenciamento de Backup e Recovery com o BarmanGerenciamento de Backup e Recovery com o Barman
Gerenciamento de Backup e Recovery com o Barman
 
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
 
Planejamento (e recuperação) de Desastres por Rodrigo Campos
Planejamento (e recuperação) de Desastres por Rodrigo CamposPlanejamento (e recuperação) de Desastres por Rodrigo Campos
Planejamento (e recuperação) de Desastres por Rodrigo Campos
 
Apresentação de produtos - SaveinCloud .pptx.pdf
Apresentação de produtos - SaveinCloud .pptx.pdfApresentação de produtos - SaveinCloud .pptx.pdf
Apresentação de produtos - SaveinCloud .pptx.pdf
 
Apresentacao Veeam Backup & Replication
Apresentacao Veeam Backup & ReplicationApresentacao Veeam Backup & Replication
Apresentacao Veeam Backup & Replication
 
Migre seu banco de dados para a nuvem. Pergunte-me como!
Migre seu banco de dados para a nuvem. Pergunte-me como!Migre seu banco de dados para a nuvem. Pergunte-me como!
Migre seu banco de dados para a nuvem. Pergunte-me como!
 
Estrategias de backup e recovery
Estrategias de backup e recoveryEstrategias de backup e recovery
Estrategias de backup e recovery
 
Introdução ao Windows Azure - Sessão 1 (mais teórica)
Introdução ao Windows Azure - Sessão 1 (mais teórica)Introdução ao Windows Azure - Sessão 1 (mais teórica)
Introdução ao Windows Azure - Sessão 1 (mais teórica)
 
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
 
Qnax servidores dedicado no brasil
Qnax servidores dedicado no brasilQnax servidores dedicado no brasil
Qnax servidores dedicado no brasil
 
TechEd_OFC302
TechEd_OFC302TechEd_OFC302
TechEd_OFC302
 
Arcserve UDP Cloud Direct - DeServ
Arcserve UDP Cloud Direct - DeServArcserve UDP Cloud Direct - DeServ
Arcserve UDP Cloud Direct - DeServ
 
10 dicas eficazes para fazer backup online
10 dicas eficazes para fazer backup online10 dicas eficazes para fazer backup online
10 dicas eficazes para fazer backup online
 

Mais de Marcelo Altmann

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
 
Percona XtraBackup - New Features and Improvements
Percona XtraBackup - New Features and ImprovementsPercona XtraBackup - New Features and Improvements
Percona XtraBackup - New Features and ImprovementsMarcelo Altmann
 
Troubleshooting MySQL from a MySQL Developer Perspective
Troubleshooting MySQL from a MySQL Developer PerspectiveTroubleshooting MySQL from a MySQL Developer Perspective
Troubleshooting MySQL from a MySQL Developer PerspectiveMarcelo Altmann
 
Percona University - ProxySQL para MySQL
Percona University - ProxySQL para MySQLPercona University - ProxySQL para MySQL
Percona University - ProxySQL para MySQLMarcelo Altmann
 
DB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQLDB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQLMarcelo Altmann
 
MySQL Backup Best Practices and Case Study- .ie Continuous Restore Process
MySQL Backup Best Practices and Case Study- .ie Continuous Restore ProcessMySQL Backup Best Practices and Case Study- .ie Continuous Restore Process
MySQL Backup Best Practices and Case Study- .ie Continuous Restore ProcessMarcelo Altmann
 
A Percona Support Engineer Walkthrough on pt-stalk
A Percona Support Engineer Walkthrough on pt-stalkA Percona Support Engineer Walkthrough on pt-stalk
A Percona Support Engineer Walkthrough on pt-stalkMarcelo Altmann
 
MysQL melhores práticas de seguranca
MysQL  melhores práticas de segurancaMysQL  melhores práticas de seguranca
MysQL melhores práticas de segurancaMarcelo Altmann
 
MySQL - Melhores práticas de replicação de dados
MySQL - Melhores práticas de replicação de dadosMySQL - Melhores práticas de replicação de dados
MySQL - Melhores práticas de replicação de dadosMarcelo Altmann
 
Percona Live London 2014 - MySQL Backup Strategy @ IEDR
Percona Live London 2014 - MySQL Backup Strategy @ IEDRPercona Live London 2014 - MySQL Backup Strategy @ IEDR
Percona Live London 2014 - MySQL Backup Strategy @ IEDRMarcelo Altmann
 

Mais de Marcelo Altmann (12)

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
 
Percona XtraBackup - New Features and Improvements
Percona XtraBackup - New Features and ImprovementsPercona XtraBackup - New Features and Improvements
Percona XtraBackup - New Features and Improvements
 
Troubleshooting MySQL from a MySQL Developer Perspective
Troubleshooting MySQL from a MySQL Developer PerspectiveTroubleshooting MySQL from a MySQL Developer Perspective
Troubleshooting MySQL from a MySQL Developer Perspective
 
Percona University - ProxySQL para MySQL
Percona University - ProxySQL para MySQLPercona University - ProxySQL para MySQL
Percona University - ProxySQL para MySQL
 
DB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQLDB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQL
 
MySQL Backup Best Practices and Case Study- .ie Continuous Restore Process
MySQL Backup Best Practices and Case Study- .ie Continuous Restore ProcessMySQL Backup Best Practices and Case Study- .ie Continuous Restore Process
MySQL Backup Best Practices and Case Study- .ie Continuous Restore Process
 
A Percona Support Engineer Walkthrough on pt-stalk
A Percona Support Engineer Walkthrough on pt-stalkA Percona Support Engineer Walkthrough on pt-stalk
A Percona Support Engineer Walkthrough on pt-stalk
 
MysQL melhores práticas de seguranca
MysQL  melhores práticas de segurancaMysQL  melhores práticas de seguranca
MysQL melhores práticas de seguranca
 
ProxySQL para mysql
ProxySQL para mysqlProxySQL para mysql
ProxySQL para mysql
 
Optimizando MySQL
Optimizando MySQLOptimizando MySQL
Optimizando MySQL
 
MySQL - Melhores práticas de replicação de dados
MySQL - Melhores práticas de replicação de dadosMySQL - Melhores práticas de replicação de dados
MySQL - Melhores práticas de replicação de dados
 
Percona Live London 2014 - MySQL Backup Strategy @ IEDR
Percona Live London 2014 - MySQL Backup Strategy @ IEDRPercona Live London 2014 - MySQL Backup Strategy @ IEDR
Percona Live London 2014 - MySQL Backup Strategy @ IEDR
 

Último

10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptxVagner Soares da Costa
 
NR10 - Treinamento LOTO - 2023.pp tx
NR10 - Treinamento LOTO - 2023.pp     txNR10 - Treinamento LOTO - 2023.pp     tx
NR10 - Treinamento LOTO - 2023.pp txrafaelacushman21
 
apresentação de Bancos de Capacitores aula
apresentação de Bancos de Capacitores aulaapresentação de Bancos de Capacitores aula
apresentação de Bancos de Capacitores aulaWilliamCruz402522
 
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptxVagner Soares da Costa
 
Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06AndressaTenreiro
 
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxTRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxFlvioDadinhoNNhamizi
 
Apresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMApresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMdiminutcasamentos
 

Último (7)

10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
 
NR10 - Treinamento LOTO - 2023.pp tx
NR10 - Treinamento LOTO - 2023.pp     txNR10 - Treinamento LOTO - 2023.pp     tx
NR10 - Treinamento LOTO - 2023.pp tx
 
apresentação de Bancos de Capacitores aula
apresentação de Bancos de Capacitores aulaapresentação de Bancos de Capacitores aula
apresentação de Bancos de Capacitores aula
 
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
 
Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06
 
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxTRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
 
Apresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMApresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPM
 

Backup para MySQL

  • 1. © 2020 Percona1 Marcelo Altmann Backup para MySQL Software Engineer MySQL Brazil Virtual Meetup 23/07/2020
  • 3. © 2020 Percona3 Marcelo Altmann ▪Desenvolvedor @ percona • Engenheiro de Suporte Senior @ percona • Líder Técnico @ percona • MySQL DBA @ IEDR (CCTLD Irlanda) ▪Tecnologo em Sistemas para Internet @ Feevale ▪Oracle ACE Associate ▪blog.marceloaltmann.com ▪Certificaçoes • OCP, MySQL 5.7 Database Administrator • OCP, MySQL 5.6 Database Administrator • OCP, MySQL 5.6 Developer • OCP, MySQL 5 Database Administrator • OCP, MySQL 5 Developer • OCP, MySQL 5.0/5.1/5.5
  • 4. © 2020 Percona4 Por que fazer backup?
  • 5. © 2020 Percona5 Por que fazer backup? Motivo ▪Segurança dos dados ▪Provisionar replicas ▪Testar software em ambientes de homologação / teste ▪Point in time recovery ▪Disaster recovery • Corrupção de dados • Invasão do banco / sistema • Bugs no software • Falhas de hardware
  • 6. © 2020 Percona6 Por que fazer backup? Objetivo ▪Estar preparado para o maior leque de possibilidades ▪Minimizar Downtime
  • 8. © 2020 Percona8 Replicação como backup? Sim ▪Crashes ▪Corrupção física ▪Falhas de hardware • CPU • Disco • RAM • Rede
  • 9. © 2020 Percona9 Replicação como backup? Não ▪Bugs na aplicação ▪Database hackeada ▪Erro operacional
  • 10. © 2020 Percona10 Replicação como backup? Não ▪Erro operacional • DROP sem WHERE • Ambiente de produção?!?!?! Achei que estava conectado no DEV
  • 11. © 2020 Percona11 Lógico ▪Estrutura e dados salvos em plain-text ▪CREATE DATABASE / TABLE / INSERT INTO … ▪Pode ser usado facilmente para restore seletivo ▪Não carrega fragmentação / corrupção ▪Recria toda a estrutura física do arquivo no disco. ▪Restore mais lento ▪Ferramentas: mysqldump / my[dumper|loader] / mysqlpump
  • 12. © 2020 Percona12 Físico ▪Cópia física do arquivos do banco ▪Restore rápido ▪Um pouco mais complicado para restore seletivo ▪Corrupção e Fragmentação são levadas a frente ▪Ferramentas: Percona Xtrabackup / MEB / MariaBackup / snapshot / rsync
  • 13. © 2020 Percona13 Diferencial ▪Cópia completa do banco ▪Cada cópia diferencial contém todos os dados desde o backup completo • Segunda: Completo • Terça: Diferencial desde segunda • Quarta: Diferencial desde segunda • Quinta: Diferencial desde segunda
  • 14. © 2020 Percona14 Diferencial ▪Restore evento na quinta feira: • Completo de segunda • Diferencial tirado na quinta
  • 15. © 2020 Percona15 Incremental ▪Cópia completa do banco ▪Cada cópia incremental contém os dados desde o último backup • Segunda: Completo • Terça: incremental desde segunda • Quarta: incremental desde terça • Quinta: incremental desde quarta
  • 16. © 2020 Percona16 Incremental ▪Restore evento na quinta feira: • Completo tirado na segunda • Aplicar incremental de terça no completo de segunda • Aplicar incremental de quarta no backup segunda+terça • Aplicar incremental de quinta no backup segunda+terça+quarta
  • 18. © 2020 Percona18 N Ã O ! ! !
  • 19. © 2020 Percona19 Compactar ▪Ocupar menos espaço (pode se guardar mais backups) ▪Quando feito stream, requer menos tráfego de rede ▪Aumenta o tempo tanto de backup quanto restore ▪PXB (qpress): • xtrabackup --backup --compress --parallel=4 --compress-threads=4 --target-dir=/backup/ ▪Zip / gzip / bzip / . . .
  • 20. © 2020 Percona20 Criptografar ▪Mantém o backup seguro a acessos indesejados ▪Openssl / GPG ▪PXB • xtrabackup --backup --parallel=4 --encrypt-threads=4 --encrypt=AES256 --encrypt-key-file=/data/backups/keyfile --target-dir=/data/backups • xtrabackup --parallel=4 --decrypt=AES256 --encrypt-key-file=/data/backups/keyfile --target-dir=/data/backups
  • 22. © 2020 Percona22 Armazenar ▪Onde armazenar os backups? • Mesmo servidor?
  • 23. © 2020 Percona23 Armazenar ▪Onde armazenar os backups? • Mesmo servidor?
  • 24. © 2020 Percona24 Armazenar ▪Onde armazenar os backups? • Mesmo servidor? • Mesmo datacenter?
  • 25. © 2020 Percona25 Armazenar ▪Onde armazenar os backups? • Mesmo servidor? • Mesmo datacenter? • Mesma região ?
  • 26. © 2020 Percona26 Armazenar ▪Onde armazenar os backups? • Mesmo servidor? • Mesmo datacenter? • Mesma região ? ▪Qual tipo / magnitude de desastre natural meus dados devem sobreviver?
  • 27. © 2020 Percona27 A T E N Ç Ã O ! ! ! I M P O R T A N T E ! ! !
  • 29. © 2020 Percona29 Restaurar ▪Parte mais importante de uma estratégia de backup ▪Ter backup e não testar o restore é o mesmo que não ter backup! ▪Consigo restaurar ? ▪Qual o processo para restaurar? • Copiar da origem e mandar pro destino • Descriptografar / descompactar / preparar / subir a base ▪Quanto tempo leva ?
  • 31. © 2020 Percona31 Validar o backup ▪Validar que o backup realmente tem os dados que deve ter ▪Restaurar o backup em um servidor/vm/container zerado ▪Configurar o servidor como slave do master original • Quanto tempo leva para ficar em sincronia? ▪Meu dado está consistente? ▪Rodar pt-table-checksum ▪Testar PITR (Point In Time Recovery)
  • 32. © 2020 Percona32 Backup de logs binarios
  • 33. © 2020 Percona33 Backup de logs binarios ▪Possibilita restaurar o banco de dados a um ponto específico no passado • DELETE sem WHERE • Aplicação corrompeu/destruiu dados ▪Mysqlbinlog • mysqlbinlog --read-from-remote-server --stop-never --raw ▪Maxscale binlog server
  • 34. © 2020 Percona34 Período de retenção
  • 35. © 2020 Percona35 Período de retenção ▪Quanto tempo no passado deve conseguir voltar meus dados? ▪Como armazenar este dado • Mídias devagar ▪Esteja preparado para restaurar
  • 37. © 2020 Percona37 PXB DEMO TIME!!!
  • 38. DATABASE PERFORMANCE MATTERS Database Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters Obrigado!