Archiv für den Tag: 11. Mai 2012

Postgres: VACUUM FULL Alternative

Vaccuum Full benötigt viele Resourcen. Soll nur ein Index neu aufgebaut werden kann man mit einem Trick das gleiche erreichen:

ALTER TABLE <meineTabelle> ALTER <meineSpalte> TYPE <spaltentyp>; -- postgres 8.x
ALTER TABLE <meineTabelle> ALTER <meineSpalte> SET DATA TYPE <spaltentyp>; --postgres 9.x

Dieser Befehl „ändert“ den Datentyp einer Spalten auf den gleichen Typ (nach aussen passiert also nichts). Intern wird die Tabelle und der Index neu aufgebaut und Speicher freigegeben.