PostgreSQL dumpen onder Linux: verschil tussen versies
Uit EekBoek
Naar navigatie springenNaar zoeken springen
Geen bewerkingssamenvatting |
kGeen bewerkingssamenvatting |
||
(5 tussenliggende versies door een andere gebruiker niet weergegeven) | |||
Regel 1: | Regel 1: | ||
Onderstaande | Onderstaande scriptje gebruik ik om mijn PostgreSQL databases te dumpen tot bestanden, die weer eenvoudig gebackupped kunnen worden. Ik zet het script in /usr/local/sbin/ en maak het uiteraard uitvoerbaar. Het script roep ik aan vanuit mijn backupscript, maar uiteraard kan het ook worden aangeroepen vanuit cron. Het aanroepen gaat op deze manier: | ||
Het script roep ik | |||
su postgres -c /usr/local/sbin/postgresqlbackup | su postgres -c /usr/local/sbin/postgresqlbackup | ||
Regel 9: | Regel 7: | ||
chmod 700 /var/postgresqldump | chmod 700 /var/postgresqldump | ||
Het scriptje zelf: | |||
#!/bin/bash | #!/bin/bash | ||
# /usr/local/sbin/postgresqlbackup | # /usr/local/sbin/postgresqlbackup | ||
# paul@vandervlis.nl | # paul@vandervlis.nl | ||
# scriptje om alle databases op deze machine als apart bestand te dumpen | # scriptje om alle databases op deze machine als apart bestand te dumpen | ||
# DIR voor dump | # DIR voor dump | ||
MDIR="/var/postgresqldump" | MDIR="/var/postgresqldump" | ||
if ! test -e $MDIR; then echo "$MDIR bestaat niet"; exit; fi | if ! test -e $MDIR; then echo "$MDIR bestaat niet"; exit; fi | ||
cd $MDIR | cd $MDIR | ||
lijst=`psql -ltA|cut -d\| -f1` | lijst=`psql -ltA|cut -d\| -f1` | ||
for database in $lijst; do | for database in $lijst; do | ||
if ! test $database = "template0"; then | if ! test $database = "template0"; then |
Huidige versie van 7 feb 2017 om 20:09
Onderstaande scriptje gebruik ik om mijn PostgreSQL databases te dumpen tot bestanden, die weer eenvoudig gebackupped kunnen worden. Ik zet het script in /usr/local/sbin/ en maak het uiteraard uitvoerbaar. Het script roep ik aan vanuit mijn backupscript, maar uiteraard kan het ook worden aangeroepen vanuit cron. Het aanroepen gaat op deze manier:
su postgres -c /usr/local/sbin/postgresqlbackup
Er dient eerste een directory voor de dump te worden aangemaakt, zo:
mkdir /var/postgresqldump chown postgres /var/postgresqldump chmod 700 /var/postgresqldump
Het scriptje zelf:
#!/bin/bash # /usr/local/sbin/postgresqlbackup # paul@vandervlis.nl # scriptje om alle databases op deze machine als apart bestand te dumpen # DIR voor dump MDIR="/var/postgresqldump" if ! test -e $MDIR; then echo "$MDIR bestaat niet"; exit; fi cd $MDIR lijst=`psql -ltA|cut -d\| -f1` for database in $lijst; do if ! test $database = "template0"; then echo -n $database echo -n " " pg_dump $database > $database.sql fi done echo