On 06/22/10 8:44 PM, Janet Jacobsen wrote:
Hi. Is it possible to vacuum a table (vacuum full analyze) from a script. Currently I run the Postgres client and then run vacuum, but I'd like to automate the vacuum by calling it from a (Perl) script.
postgres since 8.1 has had autovacuum, autovacuum automatically analyzes, too. You shouldn't need to vacuum in a script.
in answer to your specific question, yes. perl can connect to postgres quite easily, using DBI w/ DBD-PgSQL, then you can just execute a query like "VACUUM ANALYZE tablename;"
If your tables have become badly fragmented, CLUSTER on the most used index (usually the primary key) works much better than VACUUM FULL, although do note, it uses a global table lock, so you can't be accessing the table at the same time.
-- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general