Pular para o conteúdo

Backup de banco de dados MySQL

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
Aristides Neto aristidesbneto
Hits: 6.472 Categoria: Shell Script Subcategoria: Backup
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

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
Download backup_database.sh Enviar nova versão

Esconder código-fonte

#!/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 {} \;

Backup utilizando rsync com envio do log e informativo via e-mail

Backup Ubiquiti com usuários e senhas SSH diferentes

Script de backup - rar

Backup Completo Cpanel

DriveTool.sh: um script para cópia rápida e segura de arquivos para unidades flash USB

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.