
Olá, pessoal! Hoje vamos falar sobre um script de backup de banco de dados MySQL com integração com o Telegram, utilizando ShellScript. Ter backups regulares do seu banco de dados é essencial para garantir a segurança e a disponibilidade dos dados. Com esse script, você pode automatizar o processo de backup e receber notificações instantâneas sobre o status do backup por meio do Telegram.
Aqui está o código do script:
#!/bin/bash
# Variáveis
DATA=$(date +%Y-%m-%d_%H-%M-%S)
echo $DATA
MYSQLDUMP="mysqldump -h HOST-u root -pSENHA"
MYSQL="mysql -h HOST -u root -pSENHA "
BACKUP_DIR="/MYSQL_DUMPS/"
TELEGRAM_CHAT_ID=""
TELEGRAM_BOT_TOKEN=""
databases=`$MYSQL -e "SHOW DATABASES;" | grep -Ev "(Database|information_schema|performance_schema|sys|mysql)"`
echo "Enviando mensagem inicial para o Telegram"
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" -d chat_id=$TELEGRAM_CHAT_ID -d text="@==========================@
👀 Iniciando Backup Banco de dados em $DATA..."
for db in $databases; do
mkdir -p $BACKUP_DIR/$db
find $BACKUP_DIR/$db -mtime +3 -exec rm {} \;
$MYSQLDUMP --force --opt --databases $db > "$BACKUP_DIR/$db/$DATA.sql"
TAMANHO=`du -sh $BACKUP_DIR/$db/$DATA.sql | cut -f1`
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" -d chat_id=$TELEGRAM_CHAT_ID -d text="✅ O dump $db foi criado com sucesso.
💾 O tamanho ocupado é $TAMANHO
"
done
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" -d chat_id=$TELEGRAM_CHAT_ID -d text="
Os dumps dos bancos de dados foram realizados com sucesso.
@==========================@"
O script possui algumas variáveis que você precisa configurar antes de executá-lo:
HOST
: Insira o nome do host onde o banco de dados MySQL está sendo executado.SENHA
: Substitua pela senha do usuário root do MySQL.BACKUP_DIR
: Diretório onde os backups serão armazenados. Certifique-se de ter permissões de gravação nesse diretório.TELEGRAM_CHAT_ID
: ID do chat do Telegram para receber as notificações de backup. Você precisa criar um bot no Telegram e obter o ID do chat.TELEGRAM_BOT_TOKEN
: Token de acesso do bot do Telegram. Você precisa criar um bot no Telegram e obter o token.
Após configurar as variáveis, você pode executar o script. Ele irá fazer o dump de todos os bancos de dados, criando um diretório para cada banco dentro do diretório de backup especificado. Cada backup terá o nome no formato DATA.sql
, onde DATA é a data e hora em que o backup foi criado.
Durante o processo, o script enviará mensagens para o chat do Telegram informando o início do backup, o sucesso de cada backup individual e uma mensagem final informando que todos os backups foram realizados com sucesso.
Tenha em mente que esse script é apenas um exemplo e pode ser personalizado de acordo com suas necessidades específicas. Certifique-se de adaptá-lo ao seu ambiente e às suas configurações do MySQL antes de utilizá-lo em produção.
Manter backups regulares do seu banco de dados MySQL é uma prática fundamental para garantir a segurança dos dados e a rápida recuperação em caso de falhas. Com a integração com o Telegram, você receberá notificações em tempo real sobre o status dos backups, permitindo uma maior tranquilidade e controle sobre o processo.
Espero que esse script seja útil para você. Se tiver alguma dúvida ou sugestão, não hesite em deixar um comentário. Até a próxima!