Created
March 5, 2013 16:47
-
-
Save altmas5/5091718 to your computer and use it in GitHub Desktop.
dump/backup all mysql local databases
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| # Ruta en la que se guarda el log de la operacion de backup. | |
| logfile="/var/backup/mysql/backUp.log" | |
| # Ruta en la que guardar los backups | |
| backup_dir="/var/backup/mysql" | |
| # Usuario | |
| username="root" | |
| password="acaElPass" | |
| # Creamos un nuevo log del proceso de backup | |
| #rm -rf $logfile | |
| #touch $logfile | |
| # Mediante esta instruccion, generamos un nombre de fichero con el dia y la hora del proceso de backup. | |
| timeslot=$(date +"%Y%m%d_%H-%M") | |
| cd $backup_dir | |
| mysql -u root --password=$password -Bse 'show databases' > Bases; | |
| DBs=$(cat Bases| grep -v information_schema| grep -v performance_schema); | |
| echo "**********************$(date)*************************" >> $logfile | |
| # Iteramos a traves de la lista de bases de datos a las que el usuario tiene acceso. | |
| for db in $DBs | |
| do | |
| mysqldump --routines -u $username --password=$password $db > $db-$timeslot.sql | |
| timeslot=$(date +"%Y%m%d_%H-%M") | |
| echo "Backup completo de la base de datos: $db ($db-$timeslot.sql)" >> $logfile | |
| done; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment