Dumpmysql.sh : Différence entre versions
De wikiGite
| Ligne 37 : | Ligne 37 : | ||
Ne pas oublier un minimum de protection | Ne pas oublier un minimum de protection | ||
| − | + | chmod 600 dumpmysql.conf | |
Version du 25 mars 2010 à 09:11
Voir Mise_à_jour_automatique_des_scripts pour la création automatique du script suivant :
#!/bin/bash
# FSo 2010
# V1.2
# The script and its config file must be placed in /opt/systools directory
# or change line bellow
. /opt/systools/dumpmysql.conf
if [ ! -d $BACKUP_DIR ]
then
mkdir -p $BACKUP_DIR
fi
cd $BACKUP_DIR
for DB in $BASE
do
mysqldump $DB $DUMP_OPTS --password=$PASSWORD > ${HOST}_${DB}_${JOUR}.sql
rm -f ${HOST}_${DB}_${JOUR}.sql.gz
gzip ${HOST}_${DB}_${JOUR}.sql
done
Puis créer un fichier de config dumpmysql.conf
#!/bin/bash # FSo 2010 # dumpmysql.sh config file HOST=<nom du host> PASSWORD=<mot de passe admin mysql> BACKUP_DIR=/home/backup JOUR=$(date +%w) # One or some bases separated by a space #BASE=ephoto # OR all databases except mysql BASE=$(mysql --execute "show databases\G" --password=$PASSWORD | grep -v row | sed -e 's/Database: //g' | grep -v mysql) # Some options required #DUMP_OPTS="--routines" DUMP_OPTS=""
Modifier le host, le mot de passe, et commenter/décommenter selon qu'on veut une sauvegarde de une ou quelques bases, ou toutes les bases, et si on veut ajouter des options à mysqldump (notamment, "--routines" est nécessaire en v5 pour sauvegarder aussi les procédures et fonctions, mais n'est pas reconnue en v4).
Ne pas oublier un minimum de protection
chmod 600 dumpmysql.conf
