Ich googelte und fand diese alte Webseite , auf der nur stand, um den Namen des Verzeichnisses zu ändern. Ich habe es versucht, aber es hat nicht funktioniert:
$ pg_lsclusters
Version Cluster Port Status Owner Data directory Log file
8.4 main 5432 down postgres /var/lib/postgresql/8.4/main /var/log/postgresql/postgresql-8.4-main.log
9.1 main 50420 online postgres /var/lib/postgresql/9.1/main /var/log/postgresql/postgresql-9.1-main.log$ pg_ctlcluster 9.1 main stop
$ pwd
/var/lib/postgresql/9.1
$ ls
main
$ mv main oldmain
$ pg_ctlcluster 9.1 oldmain start
Error: specified cluster does not exist
PostgreSQL 9.1.4, Ubuntu 11.10
postgresql
maintenance
Rob Bednark
quelle
quelle
Antworten:
Update: Version 166 des
postgresl-common
Pakets hinzugefügtpg_renamecluster
. Siehe Ilyas neue Antwort dazu .In älteren Versionen (einschließlich Postgres 9.1.4 unter Ubuntu 11.10) ist der Name eines Clusters an den Namen des Datenverzeichnisses in der von Martin Pitt eingeführten "PostgreSQL-Architektur mit mehreren Versionen / mehreren Clustern" gebunden. Dies wird mit Debian-Paketen (Debian, Ubuntu und verwandte Distributionen) geliefert. Eine detaillierte Beschreibung der Architektur finden Sie unter:
Oder durchsuchen Sie die Datei online hier.
Andere Installationen verfügen nicht über alle diese Funktionen, sodass einige Leute verwirrt sein können, wenn Sie über Clusternamen sprechen.
Das Umbenennen des Datenverzeichnisses funktioniert nicht, da Sie das Verzeichnis
/etc/postgresql/<version>/<cluster>
entsprechend ändern müssen .Und es gibt ein paar Einstellungen in Ihrer
postgresql.conf
, die auch angepasst werden müssen. Führen Sie ein grep im Verzeichnis aus, um Folgendes anzuzeigen:quelle
Debian / Ubuntu hat einen
pg_renamecluster
Befehl (verfügbar im "postgresql-common" -Paket), der genau das tut, was Sie brauchen:postgresql.conf
.Manpage .
Hinweis für Systemd-Benutzer: Generatoren werden verwendet, um eine Einheitendatei (dh einen Dienst) für jeden PostgreSQL-Cluster zu erstellen. Nach dem
pg_renamecluster
erneuten Laden der Systemd-Konfiguration sollten Sie den neuen Dienst aktivieren und starten:sudo systemctl daemon-reload sudo systemctl enable postgresql@<version>-<new cluster name>.service sudo systemctl start postgresql
quelle
pg_renamecluster
die instabile Version erst mit postgresql-common (166) im Februar 2015 hinzugefügt wurde . IOW: nicht verfügbar in Debian vor Jessie-Backports. Das ist Jahre, nachdem die Frage gestellt wurde und für Postgres 9.1 kaum anwendbar ist (obwohl Sie in der aktualisierten Infrastruktur einen veralteten S. 9.1-Cluster ausführen können ).