Backup de banco de dados MySQL
Publicado por Aristides Neto (última atualização em 24/06/2019)
[ Hits: 6.308 ]
Homepage: https://www.aristidesneto.com.br/
Script para backup de banco de dados MySQL. O script irá fazer o backup e compactar em bz2... basta informar quais bancos deseja backupear. No final verifica os backups antigos e remove conforme a regra de dias definida pelo usuário. Todo o processo de backup é salvo em um arquivo de log.
Script esta bem simples mas eficiente!
Este script você também pode ver no meu blog: https://www.aristidesneto.com.br/script-de-backup-de-banco-de-dados-mysql
#!/bin/bash
#
# Autor: Aristides Neto
# Email: contato@aristidesneto.com.br
#
# Data: 09/06/2019
#
# Realiza o backup de bancos de dados MySQL
#
# Define usuario e senha do banco
USER='root'
PASS='root'
# Datas
DIA=`date +%d`
MES=`date +%m`
ANO=`date +%Y`
DATA_ATUAL=`date +%Y-%m-%d-%H-%M`
# Data de Inicio do Backup
DATA_INICIO=`date +%d/%m/%Y-%H:%M:%S`
# Caminho do arquivo de log
LOG_DIR=/var/log/backup
LOG=$LOG_DIR/backup_db_$ANO$MES$DIA.log
# Diretorio onde serão salvos os backups
DIR_BK=/var/backups/database
# Lista dos bancos de dados que serão realizados o backup
DATABASES=(banco01 banco02)
# Verifica se existe o diretorio para armazenar os logs
if [ ! -d $LOG_DIR ]; then
mkdir $LOG_DIR
fi
# Verifica se existe o diretorio para o backup
if [ ! -d $DIR_BK ]; then
mkdir -p $DIR_BK
fi
# Inicio do backup
echo "MYSQLDUMP Iniciado em $DATA_INICIO" >> $LOG
# Loop para backupear todos os bancos
for db in "${DATABASES[@]}"; do
# Mysql DUMP
mysqldump -u$USER -p$PASS $db > $DIR_BK/$db'_'$DATA_ATUAL.sql
echo "Realizando backup do banco ...............[ $db ]" >> $LOG
# Compacta o arquivo sql em BZ2
bzip2 $DIR_BK/$db'_'$DATA_ATUAL.sql
done
DATA_FINAL=`date +%d/%m/%Y-%H:%M:%S`
echo "MYSQLDUMP Finalizado em $DATA_FINAL" >> $LOG
# Remove arquivos de backups antigos - 5 dias
find $DIR_BK -type f -mtime +5 -exec rm -rf {} \;
rsyncdev-pt_BR.sh - Um baixador automático de ISOs de Sabayon Linux
Backup de Máquina Virtual - XenServer
Backups automáticos de rádios Intelbras APC5
Backup utilizando rsync com envio do log e informativo via e-mail
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Consertando o áudio com som ruim no Pipewire
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Servidor Ubuntu 24.04 HD 500 não tenho espaço na \home\adminis... (2)
Como programar um sistema de controle para distribuições linux em c? (3)









