Verteilen einer PG Installation auf mehrere Festplatten

Hallo zusammen,

ich habe gelesen das es für die Performance extrem gut ist die datentabellen indizes und transactionslogs (pg_xlog) jeweils auf eigene festplatten (raidsysteme) zu separieren.

das verzeichnis pg_xlog nun auf eine andere hd zu mounten stellt kein problem dar aber wie trenne ich die indizes von den datentabellen über mount ?

System Debian Etch
PG 8.3

Hier finde ich unter /var/lib/postgres/8.3/main/base/DB#NUMMER ja alle in der db befindlichen Indizes, Datentabellen etc. pp. (auch alle wieder nur als Nummer) wieder.

Habe in der Doku PostgreSQL: Documentation: Manuals: PostgreSQL 8.3: Database File Layout
gelesen aber finde da keine Erklärung für mich.

Danke

Sigh

P.S.

Es werden über php tabellen, Sequences und INdizes dynamisch erzeugt (so jeden Monat ein paar zusätzliche) weswegen es sehr unhandlich für mich wäre wenn es keine automatische lösung (wie mount des pg_xlog) gäbe)

Ich bereite so was auch gerade vor.
Man muß einen neuen Tablespace anlegen auf eider neuen Platte, dann kann man mit ‘Alter Index Tablesace’ diesen dahin verfrachten.
Steht zumindest im Handbuch WIMRE :wink:

Gruß Uwe

EDIT: Du findest weitere Hinweise im Online-Handbuch unter Alter Index oder Create Tablespace

sehe ich sowas eigentlich immer schon beim erstellen des Modells vor … auch wenn die zunaechst zwei Tablespaces auf den selben Ort zeigen - kann man später den Hilfsadmins die beiden Sachen an die Hand legen

Man kann Tabellen und Indexes später mittels ALTER auf einen anderen Tabelspace kopieren.

Vorsicht: das sperrt die Tabelle für die Dauer des Kopierens.

Ist also besser, das von vorneherein gleich richtig zu planen.

Vorsicht: das sperrt die Tabelle für die Dauer des Kopierens.
Ist also besser, das von vorneherein gleich richtig zu planen.

Ja das sieht ja dann gut aus für meinen Anwendungsfall.

Es ist so das Daten mit Timestamps eingelesen werden. wenn ein timestamp in einen “neuen” Monat fällt wird eine Tabelle für den Monat angelegt.

Brauche in der Funktion also “nur” den ALTER Tablespace noch einzubauen und dann werden beim anlegen einer neuen Tabelle direkt alle tablespaces editiert. erst danach würde Daten eingefügt.

Sobald die extra HDs da sind versuche ich es einzubauen (es sei denn man verweigert mir die extra hds plötzlich (sowas ist ja schonmal vorgekommen grummel))