PostgreSQL

Dieser Artikel beschreibt die Installation und Vorbereitung von PostgreSQL für den Einsatz mit Nuclos.

Website des Anbieters

www.postgresql.org
Download PostgreSQLPostgreSQL Download
Nuclos unterstütztVersion ab 8.4

Die Installation einer PostgreSQL Datenbank wird optional auch vom Nuclos-Installer (außer generic) durchgeführt  !

Installation

Laden Sie den Installer für Ihr Betriebssystem von der Website des Anbieters und führen Sie Ihn aus, folgen Sie dabei den Anweisungen des jeweiligen Installers. Lassen Sie den Installer eine Datenbank vorinstallieren.

Wenn Sie PostgreSQL auf Windows installieren, wird Ihnen die Option "Install pl/pgsql in template1" angeboten. Mit Auswahl dieser Option entfällt Schritt 6 weiter unten.

Der JDBC Treiber für PostgreSQL ist bereits im Nuclos Installer enthalten.

Vorbereitung

Nach erfolgter Installation von PostgreSQL müssen auf der installierten Datenbank eine Login-Rolle und ein Schema eingerichtet werden.

 

 

Installationsschritte

Loggen Sie sich als Adminstrator ein

Installation postrgesql 1.png

Neue Login-Rolle anlegen

Als erstes müssen Sie eine eigene Login-Rolle für Ihren Nuclos-Datenbank-User anlegen (in dem Screenshot mit dem Namen nuclos).

Installation postrgesql 2.png

Oder über die Console:

CREATE ROLE <user> LOGIN 
UNENCRYPTED PASSWORD <password> 
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE;

Neuen Tablespace anlegen

PostgreSQL verwaltet Tablespaces als eigene Verzeichnisse. Um einen Tablespace für Nuclos zu verwenden, müssen Sie daher ein neues Verzeichnis anlegen. Auf dieses Verzeichnis muss PostgreSQL schreibenden Zugriff haben.

Hinweis:

Sie können es beispielsweise unterhalb des data-Verzeichnis Ihrer PostgreSQL-Installation anlegen. Beachten Sie allerdings, dass unter Windows Vista/7 die Zugriffsrechte eingeschränkt sind, wenn das Verzeichnis unterhalb des Programme-Ordners liegt. Verwenden Sie in diesem Fall am besten ein anderes Verzeichnis.

Installation postrgesql 3.png

Oder über die Console:

CREATE TABLESPACE <tablespace>
OWNER <user>
LOCATION '<location>';

Datenbank anlegen

Hinweis:

Wählen Sie als Sie Eigentümer und Tablespace den zuvor angelegten User bzw. Tablespace. Als Template können Sie die Datenbank template1 auswählen, die Kodierung sollte auf UTF8 eingestellt werden.

Installation postrgesql 4.png

Oder über die Console:

CREATE DATABASE <database>
  WITH OWNER = <user> 
  TEMPLATE = template1 
  ENCODING = 'UTF8'
  TABLESPACE = <tablespace>;

Schema einrichten

Danach müssen Sie für Ihre Nuclos-Daten noch ein eigenes Schema einrichten. Tragen Sie als Eigentümer ihren zuvor angelegten User ein.

Hinweis:

Üblicherweise sind der Name des Datenbank-Users und des Schemas identisch. Dies ist aber nicht zwingend erforderlich.

Installation postrgesql 5.png

Oder über die Console:

CREATE SCHEMA <schema>
  AUTHORIZATION <user>;

PL/PGSQL-Support einrichten

Wenn Sie bei der Installation von PostgreSQL die Option "Install pl/pgsql in template1" ausgewählt haben, entfällt dieser Schritt.

Nuclos benötigt die PostgreSQL-Programmiersprache PL/pgSQL. Wenn Sie bei der Installation (Windows-Installer) diese bereits in die Template-Datenbank template1 installiert haben, wurde diese im vorherigen Schritt 4 bereits übernommen.

Ansonsten müssen sie PL/pgSQL- für Ihre Nuclos-Datenbank anlegen. Loggen Sie sich dafür auf die entsprechende Datenbank ein (auf welcher Datenbank Sie eingeloggt sind, ist am Konsolenprompt erkennbar) und führen Sie das folgende Kommando aus:

CREATE LANGUAGE plpgsql;

Installation postrgesql 6.png

Sie können überprüfen, ob PL/pgSQL-Support eingerichtet ist, indem Sie die Systemtabelle pg_language abfragen.

SELECT * FROM pg_language;

Dort müsste ein Eintrag plpgsql enthalten sein:

Installation postrgesql 7.png

Anpassen der nuclos.xml

Als Letztes müssen Sie noch die Datenbank-Einstellungen in der nuclos.xml an Ihre Konfiguration anpassen:

<adapter>postgresql
<connection-url>jdbc:postgresql://localhost:5432/#1<database> (Schritt 4)
<user>, <password>Datenbank-Benutzer und Passwort (Schritt 2)
<schema>Schema-Name (Schritt 5)
<tablespace>Tablespace-Name (Schritt 3)

localhost:5432 sind durch den Namen/IP-Adresse und Port Ihres Datenbank-Servers zu ersetzen.

Fertig

Danach ist ihre Datenbank für Nuclos vorbereitet. Die Datenbank-Objekte (Tabellen etc.) werden beim ersten Starten des Nuclos-Servers automatisch aufgesetzt. Der JDBC-Treiber für PostgreSQL wird bei der Installation automatisch konfiguriert, wenn der Adapter auf postgresql gesetzt ist.