]> granicus.if.org Git - postgresql/commitdiff
> > It would be nice for new users; I think it would make it easier
authorBruce Momjian <bruce@momjian.us>
Sat, 18 Dec 1999 08:34:50 +0000 (08:34 +0000)
committerBruce Momjian <bruce@momjian.us>
Sat, 18 Dec 1999 08:34:50 +0000 (08:34 +0000)
> > for them to actually set out and do it.  Many new users are
> > of the not-so-knowledgable variety, and shell scripting isn't
> > something they want to undertake.
>
> Can someone modify the vacuumdb shell script to do that?
i tried it... it seems to work

neko@kredit.sth.sz

doc/src/sgml/ref/vacuumdb.sgml
src/bin/scripts/vacuumdb

index 96a4f06d6a1f72ec209014e9c0a21729eba7f381..a73080701557291d5268a57486e4b21a931b5c06 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-$Header: /cvsroot/pgsql/doc/src/sgml/ref/vacuumdb.sgml,v 1.6 1999/12/07 22:41:41 momjian Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/vacuumdb.sgml,v 1.7 1999/12/18 08:34:49 momjian Exp $
 Postgres documentation
 -->
 
@@ -23,7 +23,7 @@ Postgres documentation
    <date>1999-12-04</date>
   </refsynopsisdivinfo>
   <synopsis>
-vacuumdb [ <replaceable class="parameter">connection options</replaceable> ] [ --analyze | -z ] [ --verbose | -v ]
+vacuumdb [ <replaceable class="parameter">connection options</replaceable> ] [ --analyze | -z ] [ --alldb | -a ] [ --verbose | -v ]
          [ --table '<replaceable class="parameter">table</replaceable> [ ( <replaceable class="parameter">column</replaceable> [,...] ) ]' ] [ [-d] <replaceable class="parameter">dbname</replaceable> ]
   </synopsis>
 
@@ -56,6 +56,15 @@ vacuumdb [ <replaceable class="parameter">connection options</replaceable> ] [ -
       </listitem>
      </varlistentry>
 
+     <varlistentry>
+      <term>-a, --alldb</term>
+      <listitem>
+       <para>
+       Vacuum all databases.
+       </para>
+      </listitem>
+     </varlistentry>
+
      <varlistentry>
       <term>-v, --verbose</term>
       <listitem>
index 487a2c4feea2ccd20c0e69c4a9d487b9dca21fd6..ea5fe1697e79ba767b60abbcb79a5b048626a0e6 100644 (file)
@@ -11,7 +11,7 @@
 #
 #
 # IDENTIFICATION
-#    $Header: /cvsroot/pgsql/src/bin/scripts/Attic/vacuumdb,v 1.4 1999/12/16 20:10:02 momjian Exp $
+#    $Header: /cvsroot/pgsql/src/bin/scripts/Attic/vacuumdb,v 1.5 1999/12/18 08:34:50 momjian Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -39,6 +39,8 @@ do
         --host=*)
                 PSQLOPT="$PSQLOPT -h "`echo $1 | sed 's/^--host=//'`
                 ;;
+       --alldb|-a) 
+               dbname="`psql $PASSWDOPT $AUTHOPT $PGHOSTOPT $PGPORTOPT -q -t -A -d template1 -c 'SELECT datname FROM pg_database'`";;
        --port|-p)
                PSQLOPT="$PSQLOPT -p $2"
                shift;;
@@ -119,6 +121,7 @@ if [ "$usage" ]; then
        echo "    -W,                  --password          "
        echo "    -d DBNAME,           --database=DBNAME   "
        echo "    -z,                  --analyze           "
+       echo "    -a,                  --alldb             "
        echo "    -t TABLE[(columns)], --table=TABLE[(columns)]"
        echo "    -v,                  --verbose           "
        echo "    -e,                  --echo              "
@@ -133,9 +136,13 @@ if [ -z "$dbname" ]; then
        exit 1
 fi
 
-psql $PSQLOPT -d "$dbname" -c "VACUUM $verbose$analyze$table"
+for db in $dbname
+do
+       psql $PASSWDOPT -tq $AUTHOPT $PGHOSTOPT $PGPORTOPT -c "vacuum $verbose $analyze $table" $db
+done
 
-if [ $? -ne 0 ]; then
+if [ $? -ne 0 ]
+then
        echo "$CMDNAME: Vacuum failed."
        exit 1
 fi