Dumpmysql.sh : Différence entre versions
De wikiGite
(Page créée avec « 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... ») |
|||
| Ligne 18 : | Ligne 18 : | ||
gzip ${HOST}_${DB}_${JOUR}.sql | gzip ${HOST}_${DB}_${JOUR}.sql | ||
done | 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 recoinnue en v4). | ||
Version du 25 mars 2010 à 09:09
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 recoinnue en v4).
