SuperX

KontaktMail für InfosSuchenLogin

Postgres aus der Distribution Ubuntu oder Debian

Postgres sollte über die normale Paketverwaltung der Distribution installiert werden. Weiter oben wurde beschrieben wie Sie Postgres unter Debian/Ubuntu/Suse selbst kompilieren.

Vorbemerkung: Wenn Sie den DB-Server auf einem anderen Rechner betreiben, reicht es die Postgres-Clientpakete zu installieren:

apt-get install postgresql-client-common
apt-get install postgresql-client

Danach sind Kommandos wie psql verfügbar.

Die folgenden Anleitungen gelten nur für den Dienst als Server:

apt-get update
apt-get install postgresql postgresql-contrib

(wird für postgresql start/stop benötigt)

Unter Ubuntu finden Sie die Postgresinstallation z.B. unter /etc/postgresql/9.1/main. Achten Sie bitte darauf, dass Sie in der SQL_ENV den Pfad für $PGPATH und $PGDATA in der SQL_ENV Ihrer Postgresinstallation dementsprechend anpassen. $PGDATA ist in meiner Beispielkonfiguration unter Ubuntu gleich dem Verzeichnis von $PGPATH.

Wenn Sie auch den Tomcat von Ubuntu nutzen wollen, empfehlen wir Ihnen den Tomcatuser auch in der Datenbank für die SuperX DB Verbindung zu nutzen.

Postgres starten und stoppen Sie mit dem Befehl:

Starten:

/etc/init.d/postgresql start

Stoppen:

/etc/init.d/postgresql stop

Neustarten:

/etc/init.d/postgresql restart

Achtung: Ubuntu legt beim ersten Start den DBSPACE in der Default-Codierung UTF-8 an. Wenn Sie ISO benutzen wollen, müssen Sie die Zeichencodierung ändern.

Bei Postgres 9 wurde z.B. festgestellt, dass standardmäßig eine Codierung „SQL-ASCII“ verwendet wurde, die nicht mit UTF-8 kompatibel ist.

Kontrolle mit

psql -l

Damit der Server UTF-8 nutzt, muss man einen ggf. vorhandenes Cluster zunächst löschen:

user postgres:

pg_dropcluster 9.5 main

oder nach Version

pg_dropcluster 10 main

ggfs anzeigen

pg_lsclusters

Danach geben Sie ein:

pg_createcluster -e UTF-8 9.5 main (bzw. 10)

Damit wird ein DBSPACE angelegt in /var/lib/postgresql/9.5/main

für ISO-8859:

initdb --encoding=LATIN9 --locale=de_DE@euro -D $PGDATA

Danach müssen Sie den Postgres-Dienst neu starten (s.o.).