Algumas noções básicas
cron
Um usuário pode utilizar o utilitário crontab para editar seu crontab. O daemon cron consumirá todos os crontabs e executará os comandos no intervalo definido. Uma entrada crontab basicamente se parece com isso:
* * * * * /path/to/some/command
backup do mysql
Backup de um banco de dados mysql pode ser obtido através de vários métodos; dependendo do mecanismo do banco de dados e da quantidade de dados, diferentes ferramentas e variantes são aplicáveis.
A maneira mais básica de fazer backup de um banco de dados seria usar mysqldump
:
# mysqldump -u USERNAME -pPASSWORD -h HOSTNAME -P PORTNUMBER DATABASENAME > DATABASENAME.sql
Como fazer backup do MySQL usando o Cron
Para fazer backups em todas as noites de sábado às 22h, use essas duas ferramentas juntas (e, além disso, transfira-as para s3) para formar uma entrada crontab como esta:
00 10 * * 1 /usr/bin/mysqldump -u USERNAME -pPASSWORD -h HOSTNAME -P PORTNUMBER DATABASENAME > DATABASENAME_$(date '+%F').sql && aws s3 cp DATABASENAME_$(date '+%F').sql s3://BUCKETNAME/db_backups/DATABASENAME_$(date '+%F').sql