Ich empfehle sehr stark , dass Sie nicht einen Tabellen auf einem externen Wechsellaufwerk setzen. Wenn die Tablespaces verschwinden (z. B. Laufwerk nicht angeschlossen), besteht die Gefahr einer schwerwiegenden Beschädigung der Datenbank , die nur schwer wiederhergestellt werden kann. Sie werden wahrscheinlich auch die Berechtigungsverwaltung als Herausforderung empfinden.
Sie sollten im Allgemeinen initdb
einen neuen Datenbankcluster auf dem Laufwerk erstellen und ihn dann mit starten pg_ctl
. Wenn Sie pg_ctl
möchten, können Sie Ihre launchd-Eigenschaften ändern, um die Datenbank automatisch zu starten (dies erfordert ein Durcheinander mit Dateiberechtigungen), oder Sie können sie einfach manuell starten, wenn Sie sie verwenden möchten.
Es ist möglicherweise einfacher, das vorhandene Datenverzeichnis an den neuen Speicherort zu verschieben und entweder einen Symlink vom alten zum neuen Speicherort zu erstellen oder Ihre Startkonfiguration zu bearbeiten, um den PostgreSQL-Launcher anzuweisen, den neuen Speicherort zu suchen. Wenn Sie postgresql.conf
sich außerhalb des Datenverzeichnisses befinden, können Sie stattdessen einfach den data_directory
Parameter in ändern postgresql.conf
.
Weitere Informationen dazu initdb
und pg_ctl
zur Verwendung finden Sie im PostgreSQL-Benutzerhandbuch .
Um zu erfahren, wie Sie PostgreSQL so einrichten, dass Ihre neue Datenbank beim Booten gestartet wird, sollten Sie etwas über Dateiberechtigungen und Starteigenschaften lernen. Ich benutze OS X nicht viel, daher kann ich bei diesem Teil nicht viel helfen. Wenn Sie ratlos sind und etwas gelesen haben, um dies herauszufinden, sollten Sie auf der OSX-Stack-Exchange-Site um Hilfe bitten. Denken Sie daran zu erklären, was Sie versucht haben und was Sie bereits getan haben. Sie müssen dies nicht tun, wenn Sie es nur vom alten Speicherort aus verknüpfen.
pg_ctl
mit dem-D
Schalter , wo sich das Datenverzeichnis befindet . Ich weiß nicht, wie Postgres unter OSX gestartet wird, daher kann ich nicht sagen, wo dies konfiguriert ist.