MySQL - Backup automático de banco de dados com data
Dica publicada em Banco de Dados / MySQL
MySQL - Backup automático de banco de dados com data
Primeiramente vamos criar um script que irá fazer um backup (dump) de sua base de dados. Use o editor de sua preferência, pico, nano, vi etc:
# pico bkp_seubanco.sh
Coloque o seguinte conteúdo nele:
Depois dê permissão de execução para o arquivo, com o comando:
# chmod +x bkp_seubanco.sh
Em seguida, coloque-o para rodar no Cron:
# crontab -e
E adicione a linha:
Onde:
Quando o backup for criado, vai ser gravado algo assim: seubanco-02-03-2015.sql
Espero ter ajudado,
Adriano Santos.
# pico bkp_seubanco.sh
Coloque o seguinte conteúdo nele:
#!/bin/sh # bkp_seubanco.sh # DATA vai imprimir a data no estio dia-mes-ano DATA=`/bin/date +%d-%m-%Y` # NOME armazena o nome do arquivo de backup e # o diretorio onde o arquivo será salvo no meu caso # /www/virtual/backup é uma pasta publica do apache, # coloque o diretório onde quer guardar o backup. NOME="/www/virtual/backup/seubanco-$DATA.sql" # variaveis do MySQL HOST="localhost" USER="seu-usuario" PASSWORD="sua-senha" DATABASE="nome-do-banco" mysqldump -h $HOST -u $USER -p$PASSWORD $DATABASE > $NOME
Depois dê permissão de execução para o arquivo, com o comando:
# chmod +x bkp_seubanco.sh
Em seguida, coloque-o para rodar no Cron:
# crontab -e
E adicione a linha:
0 2 * * * /bin/sh /home/usuario/bkp_seubanco.sh
Onde:
- 2 :: é a hora que ele vai ser executado todos os dias, no caso acima 2:00.
- /home/usuario :: é o diretório onde se encontra o seu script "bkp_seubanco.sh".
Quando o backup for criado, vai ser gravado algo assim: seubanco-02-03-2015.sql
Espero ter ajudado,
Adriano Santos.
Segui sua dica mas o backup pelo que me parece ele nao executou do jeito que pensei, alias ele nao executa .
Gostaria que ele fizesse as 01:15 da manha de sabado e nao funcionou.
Voce poderia me ajudar ?
Grato.
crontab
‪#‎faz‬ backup automatico do banco de dados mysql apto
15 01 * * 6 /bin/sh /home/backup/bkp_apto.sh
cat bkp_apto.sh
#!/bin/sh
# bkp_apto.sh
# DATA vai imprimir a data no estio dia-mes-ano
DATA=`/bin/date +%d-%m-%Y`
# NOME armazena o nome do arquivo de backup e
# o diretorio onde o arquivo será salvo no meu caso
# /www/virtual/backup é uma pasta publica do apache,
# coloque o diretório onde quer guardar o backup.
NOME="/home/backup/apto-$DATA.sql"
# variaveis do MySQL
HOST="localhost"
USER="mane"
PASSWORD="mane1234"
DATABASE="apto"
mysqldump -h $HOST -u $USER -p$PASSWORD $DATABASE > $NOME