Remarque, la petite optimisation pour backup en parallèle peut aussi se faire directement avec GNU Parallel http://www.gnu.org/software/parallel/ même principe que xargs
2010/11/16 Greg <greg-fr...@duchatelet.net>: > Bonsoir, > > petite optimisation rapide de ta boucle for, gain de temps et d'espace > disque : > > for i in $( echo "show databases;" | mysql -uadmin -p$MOT_DE_PASSE_SQL | > grep -v "Database" ); do > mysqldump $i -u $UTILISATEUR_SQL --password=$MOT_DE_PASSE_SQL | gzip | ssh > $utilisateur_dist...@$serveur_dest "cat >$DOSSIER_DEST/$PREFIX$i.sql.gz" > done > > Et une autre optimisation pour backupper en // (à tester j'ai écris comme > ça) : > > NB_CORES=$( grep processor /proc/cpuinfo | wc -l ) > for db in $( mysql -uadmin -p$MOT_DE_PASSE_SQL -e "show databases" ); do > mysql -ABN -uadmin -p$MOT_DE_PASSE_SQL -e "SELECT TABLE_NAME FROM TABLES > WHERE TABLE_SCHEMA='$db'" information_schema | xargs -n1 -P$NB_CORES -I{} sh > -c "mysqldump -uadmin -p$MOT_DE_PASSE_SQL $db {} | gzip | ssh > $utilisateur_dist...@$serveur_dest 'cat >$DOSSIER_DEST/$PREFIX$i.sql.gz'" > done > > > Le 16/11/2010 16:49, Laurent Druffin a écrit : >> >> #!/bin/sh >> DOSSIER_TEMPORAIRE_LOCAL=/xxx/xxx/xxx >> SERVEUR_DEST=xxxxxx >> DOSSIER_DEST=/xxxx/xxx/xxx >> UTILISATEUR_DISTANT=xxxxx >> MOT_DE_PASSE_SQL=xxxxx >> UTILISATEUR_SQL=admin >> PREFIX=serveur-xxxx- >> >> for i in $( echo "show databases;" | mysql -uadmin -p$MOT_DE_PASSE_SQL | >> grep -v "Database" ); do >> mysqldump $i -u $UTILISATEUR_SQL --password=$MOT_DE_PASSE_SQL > >> $DOSSIER_TEMPORAIRE_LOCAL/$i.sql >> gzip $DOSSIER_TEMPORAIRE_LOCAL/$i.sql >> >> # penser avant au certificat SSH et au ~/.ssh/authorized_keys kivabien ! >> scp $DOSSIER_TEMPORAIRE_LOCAL/$i.sql.gz >> $utilisateur_dist...@$serveur_dest:$DOSSIER_DEST/$PREFIX$i.sql.gz >> rm $DOSSIER_TEMPORAIRE_LOCAL/$i.sql.gz >> done >> >> # restauration avec la commande : >> # gunzip fichier_sauvegarde.sql.gz >> # mysql -u root -p NomDeLaBase < fichier_sauvegarde.sql >> #eof() >> >> et un simple crontab kivabien aussi... :) >> C'est basique et sûrement améliorable (garder un historique par exemple), >> mais ça fonctionne et ça répond à mes besoins. >> >> My 2 cents... >> ^^ >> _______________________________________________ >> Liste de diffusion du FRsAG >> http://www.frsag.org/ > > > -- > Greg > > _______________________________________________ > Liste de diffusion du FRsAG > http://www.frsag.org/ > _______________________________________________ Liste de diffusion du FRsAG http://www.frsag.org/