From b5130c49410c6c1300b9c8f6246a61c4d1e66004 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Sat, 10 Jun 2006 00:25:16 +0000 Subject: Added in-line compression to pgsql and mysql handlers, appears to work fine in tests --- handlers/pgsql | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) (limited to 'handlers/pgsql') diff --git a/handlers/pgsql b/handlers/pgsql index 0c72c82..435bcca 100644 --- a/handlers/pgsql +++ b/handlers/pgsql @@ -76,9 +76,17 @@ chmod 700 $vroot$backupdir # if $databases = all, use pg_dumpall if [ "$databases" == "all" ]; then if [ $usevserver = yes ]; then - execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMPALL > $backupdir/${vsname}.sql\"" + if [ "$compress" == "yes" ]; then + execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${vsname}.sql.gz\"" + else + execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMPALL > $backupdir/${vsname}.sql\"" + fi else + if [ "$compress" == "yes" ]; then + execstr="su - postgres -c \"$PGSQLDUMPALL | $GZIP > $backupdir/${localhost}-all.sql.gz\"" + else execstr="su - postgres -c \"$PGSQLDUMPALL > $backupdir/${localhost}-all.sql\"" + fi fi debug "$execstr" if [ ! $test ]; then @@ -96,11 +104,18 @@ if [ "$databases" == "all" ]; then # else use pg_dump on each specified database else for db in $databases; do - if [ $usevserver = yes ] - then - execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMP $db > $backupdir/${db}.sql\"" + if [ $usevserver = yes ]; then + if [ "$compress" == "yes" ]; then + execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\"" + else + execstr="$VSERVER $vsname exec su - postgres -c \"$PGSQLDUMP $db | > $backupdir/${db}.sql\"" + fi else - execstr="su - postgres -c \"$PGSQLDUMP $db > $backupdir/${db}.sql\"" + if [ "$compress" == "yes" ]; then + execstr="su - postgres -c \"$PGSQLDUMP $db | $GZIP > $backupdir/${db}.sql.gz\"" + else + execstr="su - postgres -c \"$PGSQLDUMP $db > $backupdir/${db}.sql\"" + fi fi debug "$execstr" if [ ! $test ]; then @@ -117,10 +132,5 @@ else done fi -if [ "$compress" == "yes" ]; then - output=`$GZIP -f $vroot$backupdir/*.sql 2>&1` - debug $output -fi - return 0 -- cgit v1.2.3