Dumppgsql.sh : Différence entre versions
De wikiGite
(Page créée avec « Voir Mise_à_jour_automatique_des_scripts pour la création automatique du script /opt/systools/dumppgsql.sh : #!/bin/bash # FSo 2010 # V1.0 # The script and its ... ») |
|||
Ligne 15 : | Ligne 15 : | ||
do | do | ||
su - postgres -c "vacuumdb -U postgres -d $DB -f -q -z" | su - postgres -c "vacuumdb -U postgres -d $DB -f -q -z" | ||
− | su - postgres -c "pg_dump $DB" > ${HOST}_${DB}_${JOUR}.sql | + | su - postgres -c "pg_dump $DB" > pg_${HOST}_${DB}_${JOUR}.sql |
− | rm -f ${HOST}_${DB}_${JOUR}.sql.gz | + | rm -f pg_${HOST}_${DB}_${JOUR}.sql.gz |
− | gzip ${HOST}_${DB}_${JOUR}.sql | + | gzip pg_${HOST}_${DB}_${JOUR}.sql |
done | done | ||
Puis créer un fichier de config dumppgsql.conf (ou le télécharger sur avec "wget <nowiki>http://www.systea.net/public/MaJ/dumppgsql.conf</nowiki>") | Puis créer un fichier de config dumppgsql.conf (ou le télécharger sur avec "wget <nowiki>http://www.systea.net/public/MaJ/dumppgsql.conf</nowiki>") |
Version du 17 janvier 2011 à 10:59
Voir Mise_à_jour_automatique_des_scripts pour la création automatique du script /opt/systools/dumppgsql.sh :
#!/bin/bash # FSo 2010 # V1.0 # The script and its config file must be placed in /opt/systools directory # or change line bellow . /opt/systools/dumppgsql.conf if [ ! -d $BACKUP_DIR ] then mkdir -p $BACKUP_DIR fi cd $BACKUP_DIR for DB in $BASE do su - postgres -c "vacuumdb -U postgres -d $DB -f -q -z" su - postgres -c "pg_dump $DB" > pg_${HOST}_${DB}_${JOUR}.sql rm -f pg_${HOST}_${DB}_${JOUR}.sql.gz gzip pg_${HOST}_${DB}_${JOUR}.sql done
Puis créer un fichier de config dumppgsql.conf (ou le télécharger sur avec "wget http://www.systea.net/public/MaJ/dumppgsql.conf")
#!/bin/bash # FSo 2010 # dumppgsql.sh config file HOST=<nom du host> BACKUP_DIR=/home/backup JOUR=$(date +%w) BASE=<nom de la base> # ou BASE="$(su - postgres -c "psql -l" | grep -v ^$ | grep -v List | grep -v Owner | grep -v rows | grep -v "+-" | awk '{print $1}' | grep -v template | grep -v postgres)" DUMP_OPTS=""
Modifier le host, 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 à pg_dump.
Ne pas oublier un minimum de protection
chmod 600 dumppgsql.conf
Si ça n'a pas déjà été fait (par maj_script.sh par exemple), planifier la sauvegarde par un lien dans /etc/cron.daily
ln -s /opt/systools/dumppgsql.sh /etc/cron.daily/dumppgsql
et la lancer une première fois manuellement
/etc/cron.daily/dumppgsql ls -l /home/backup