Backup MySQL · 3 min read · Feb 12, 2026

Backup e Recuperação MySQL Com mysql-zrm No Debian Sarge - Página 3

4 Exemplos de Backup

Com mysql-zrm você pode manter múltiplos backups, chamados de conjuntos de backup, por exemplo, um backup diário, um backup semanal, um backup para seu banco de dados osCommerce, um backup para seu banco de dados vBulletin, etc.

Agora vamos criar nosso primeiro backup que criamos no conjunto de backup dailyrun:

mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 0

Isso fará o backup imediato de todos os bancos de dados para o diretório /var/lib/mysql-zrm/dailyrun, e também criará o diretório /etc/mysql-zrm/dailyrun. –backup-level 0 significa: fazer um backup completo (você também pode fazer backups incrementais (–backup-level 1), mas eu falarei sobre isso mais tarde - por enquanto, fazemos apenas backups completos).

Se você ativou notificações por e-mail, deve ter recebido um e-mail com o status do backup agora. Mas você também pode gerar um relatório sobre o status do backup na linha de comando assim:

mysql-zrm-reporter --where backup-set=dailyrun --show backup-status-info

A saída será assim:

| backup_set backup_date backup_level backup_status comment ---------------------------------------------------------------------------------------------------------------------- dailyrun Ter 26 Set 2006 07:57:47 PM CEST 0 Backup bem-sucedido ---- |

Você também pode gerar alguns outros relatórios com os seguintes comandos:

mysql-zrm-reporter --where backup-set=dailyrun --show backup-method-info  
mysql-zrm-reporter --where backup-set=dailyrun --show backup-retention-info  
mysql-zrm-reporter --where backup-set=dailyrun --show backup-performance-info  
mysql-zrm-reporter --where backup-set=dailyrun --show restore-full-info  
mysql-zrm-reporter --where backup-set=dailyrun --show restore-incr-info  
mysql-zrm-reporter --where backup-set=dailyrun --show replication-info

Tente cada um deles para ver quais informações eles fornecem.

Agora queremos criar um backup diário e um semanal que seja executado automaticamente pelo sistema (ou seja, sem nossa interação). É assim que podemos configurar esses backups:

mysql-zrm-scheduler --add --interval daily --backup-set dailyrun --backup-level 0  
mysql-zrm-scheduler --add --interval weekly --backup-set weeklyrun --backup-level 0

(Com o segundo comando, criamos um novo conjunto de backup chamado weeklyrun.)

Agora vamos verificar nossos backups agendados:

mysql-zrm-scheduler --query

A saída se parece com isto:

| Logging to /var/log/mysql-zrm/mysql-zrm-scheduler.log 0 3 * * * /usr/bin/mysql-zrm --action backup --destination /var/lib/mysql-zrm --backup-set dailyrun --backup-level 0 0 4 * * * /usr/bin/mysql-zrm --action purge --destination /var/lib/mysql-zrm 0 2 * * 0 /usr/bin/mysql-zrm --action backup --destination /var/lib/mysql-zrm --backup-set weeklyrun --backup-level 0 |

Como você pode ver, o backup diário é executado todos os dias às 03:00h, e o backup semanal é executado todos os domingos às 02:00h.

(A propósito, em vez de

mysql-zrm-scheduler --query

você também poderia executar

crontab -l

para obter as mesmas informações.)

Se você quiser iniciar o backup diário em outro horário, por exemplo, às 13:35h, você pode fazer assim:

mysql-zrm-scheduler --add --interval daily --backup-set dailyrun --start 13:35 --backup-level 0

Para remover um backup agendado do cron, você pode fazer assim:

mysql-zrm-scheduler --delete --interval weekly

Isso removeria o backup semanal executado aos domingos às 02:00h do cron. Se você quiser remover o backup diário que está agendado para às 13:35h, você pode fazer assim:

mysql-zrm-scheduler --delete --interval daily --start 13:35

Mas você também pode executar

crontab -e

para editar seus trabalhos cron, o que às vezes é mais fácil do que lidar com mysql-zrm-scheduler.

5 Relatórios Personalizados, Relatórios HTML

No capítulo 4, já mencionei que tipo de relatórios estão disponíveis. Mas você também pode gerar relatórios personalizados, ou seja, pode especificar quais colunas/informações deseja ver. Por exemplo,

mysql-zrm-reporter --fields backup-set,backup-date,backup-level,backup-status --where backup-set=dailyrun

gerará um relatório para o conjunto de backup dailyrun que mostra as colunas backup-set, backup-date, backup-level e backup-status:

| backup_set backup_date backup_level backup_status ------------------------------------------------------------------------------------------------ dailyrun Ter 26 Set 2006 07:57:47 PM CEST 0 Backup bem-sucedido dailyrun Ter 26 Set 2006 07:58:08 PM CEST 0 Backup bem-sucedido dailyrun Ter 26 Set 2006 07:58:31 PM CEST 0 Backup bem-sucedido dailyrun Ter 26 Set 2006 08:24:04 PM CEST 0 Backup bem-sucedido |

Uma lista de todas as colunas está disponível em http://mysqlbackup.zmanda.com/index.php/What_information_can_be_obtained_from_a_backup_report%3F.

mysql-zrm também permite que você crie relatórios HTML. Vamos supor que você tenha um servidor web (por exemplo, Apache) instalado em seu sistema com o diretório raiz /var/www. Agora execute

mysql-zrm-reporter --show backup-status-info --where backup-set=dailyrun --type html --output /var/www/backup-status-dailyrun.html

Isso cria o arquivo HTML backup-status-dailyrun.html em seu diretório /var/www que você pode acessar agora em seu navegador (por exemplo, http://server1.example.com/backup-status-dailyrun.html):

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.