dilluns, 31 de gener del 2011

Backup de tots els schemes MySQL un per un en un .tar.gz

Amb aquest senzill script obtindrem una còpia de seguretat de tots els schemes MySQL un per arxiu emprant mysqldump i arxivant-los tots en un arxiu comprimit tipus .tar.gz.



#!/bin/bash

# Filtrem les bases de dades per a obtenir únicament el nom
for db in `mysql -u admin -pxxx -e "show databases;" | grep "\| " | sed 1d`
do
##  Fem el volcat de les dades de la base de dades
    echo $db
    mysqldump -u admin -pxxx --routines --skip-extended-insert $db > dump.$db.sql
done
tar -zcpf sql-byDb.tar.gz dump.*
##rm -vf dump.*



Hem de substituir admin per l'usuari amb prous privilegis per a fer mysqldump i xxx per la contrasenya d'aquest.

Fem servir --routines per afegir la creació d'stored procedures si s'escau i --skip-extended-insert per a fer un insert per registre i així facilitar la trobada de diferències entre còpies.