Centos backup mysql usando cron job

2

De acordo com este tutorial link tentando fazer backup do banco de dados mysql

eu fiz:

1) criou pastas no diretório home . /home/USERNAME/backup/

2) na pasta backup arquivo criado, denominado backup-cron-mysql.sh

3) criou conteúdo de backup-cron-mysql.sh

#!/bin/bash
db_name=dabase_name
db_user=user
db_password=password
backup_filename=$db_name-'date +%F'

mysqldump -h localhost -u $db_user -p$db_password $db_name | gzip > /home/USERNAME/dbbackup/$backup_filename.sql.gz

Feito executável de backup-cron-mysql.sh (Octal: 0755)

4) pasta criada dbbackup . caminho: /home/USERNAME/dbbackup/

5) Usando putty.exe autenticado e digitado crontab –e , depois Enter. Latter descobriu que o arquivo de configuração do cron está localizado no diretório /var/spool/cron/ e o nome do arquivo é root

6) abriu o arquivo root com o Notepad ++ e colou o seguinte código

45 14 * * *     /bin/sh /home/USERNAME/backup/backup-cron-mysql.sh
[email protected]

Como resultado, /home/USERNAME/dbbackup/ deve ver algum arquivo. Mas não vejo nada (pasta vazia).

Por favor, aconselhe o que precisa corrigir, para fazer backup do mysql

    
por Andris 21.10.2013 / 13:52

2 respostas

0

Verifique o arquivo abaixo para a saída do log cron.     / var / log / syslog

Você também pode filtrar o log usando este comando:

grep CRON /var/log/syslog

Para configurar o log em seu cron job:

 45 14 * * *     /bin/sh /home/USERNAME/backup/backup-cron-mysql.sh 2>&1 >> /var/log/myjob.log

link

    
por 21.10.2013 / 14:01
2

Algumas reflexões:

  1. Como você está usando o CentOS, o local padrão para os registros do Cron deve ser /var/log/cron . Pode não haver muita informação em lá, mas deve pelo menos dizer-lhe ou não o Cron o daemon está tentando executar seu script.

  2. O redirecionamento de saída de Zeeshan acima pode funcionar com sucesso, mas um notação mais simples seria usar o "redirecionar toda a saída para ficheiro "... por exemplo

    45 14 * * * /bin/sh /home/USERNAME/backup/backup-cron-mysql.sh &> /some/file

    Uma boa visão geral dos métodos de redirecionamento Bash está localizada aqui: link

  3. Os arquivos Crontab são complexos em alguns aspectos; uma maneira é que eles requer uma linha em branco como a última linha no arquivo. Eu sugeriria certificando-se de que há pelo menos uma linha vazia no final do arquivo (ter vários não vai doer, então você poderia jogar um par lá dentro para boa medida.)

  4. Você executou o script de backup manualmente antes de tentar automatizar com Cron? Se houver um problema com o próprio script, adicione A automação do Cron em cima disso só dificultaria a resolução de problemas.

por 21.10.2013 / 15:30