PostgreSQL

Last change on 2025-02-03 • Created on 2020-01-20 • ID: KO-D39D2

Was ist PostgreSQL?

PostgreSQL ist ein objektorientiertes Datenbankmanagementsystem. Es basiert auf POSTGRES, welches an der Universität Berkeley entwickelt wurde. Für eine Übersicht aller Features besuchen Sie bitte die offizielle Webseite https://www.postgresql.org/.

Anlegen einer PostgreSQL-Datenbank

Auf der Hauptseite des PostgreSQL-Datenbankmanagers erscheint Ihre Datenbankliste, in der alle Datenbanken aufgeführt sind, die angelegt wurden. Wenn noch keine Datenbanken angelegt ist, wird nur die Maximalanzahl aller Datenbanken sehen.

So erstellen Sie eine neue PostgreSQL-Datenbank:

  1. Klicken Sie auf "Hinzufügen".
  2. Auf der folgenden Seite sehen Sie die vorgeschlagenen (Zufalls-)Zugangsdaten zu Ihrer Datenbank. Auf Wunsch können Sie diese ändern.
  3. Wählen Sie einen Namen für die Datenbank sowie einen Namen für den zugehörigen Datenbankbenutzer aus.
  4. Das Passwort gibt Ihnen Zugriff auf die gesamte Datenbank und erlaubt Ihnen jede Datenbankinformation, Spalte oder Zeile zu erstellen, zu ändern oder zu löschen.
  5. (Optional) Unter den erweiterten Einstellungen können Sie SSL für die Verbindung zur Datenbank erzwingen. Wenn diese Einstellung aktiv ist, werden alle unverschlüsselten Verbindungen blockiert. Achtung: Dies kann negative Auswirkungen auf die Erreichbarkeit der Datenbank haben.
  6. Klicken Sie auf "Speichern" um die Datenbank anzulegen.
  7. Es erscheint eine Erfolgsmeldung. Klicken Sie auf "PostgreSQL-Datenbanken" um zur Datenbankliste zurückzukehren.

Verwalten Ihrer Datenbank(en)

In der Übersicht haben Sie die Möglichkeit eine neue Datenbank zu Erstellen oder vorhandene Datenbanken zu "Ändern" und "Löschen".

Wenn Sie eine Datenbank löschen möchten, wird konsoleH nach einer Bestätigung verlangen, ehe sie endgültig gelöscht wird. Seien Sie vorsichtig beim Bestätigen des Befehls, denn dies kann nicht mehr rückgängig gemacht werden.

Aktivieren von PostgreSQL-Erweiterungen

Wenn Sie bestimmte Datenbank-Erweiterungen, wie PostGIS oder PgStatStatements für Ihre PostgreSQL-Datenbank aktivieren möchten, navigieren Sie in der konsoleH bitte zur Datenbankübersicht ("Einstellungen; PostgreSQL").

  1. Klicken Sie in der Zeile der Datenbank rechts auf das "Zahnrad-Symbol".
  2. Setzen Sie unter Datenbank-Erweiterungen das Häkchen neben der gewünschten Extension.
  3. Danach drücken Sie auf die Schaltfläche "Speichern".
  4. Um die Erweiterung zu nutzen, können Sie sich nun mit der Datenbank verbinden.

Zugriff per SSL

Für den verschlüsselten Zugriff auf PostgreSQL bieten wir ein vorgefertigtes Zertifikat an, welches die Verschlüsselung durchführt. Bitte beachten Sie, dass die Geschwindigkeit bei verschlüsselten Verbindungen geringer ist.

Das Zertifikat lautet:

-----BEGIN CERTIFICATE-----
MIIG7jCCBNagAwIBAgIJAOHaB6/9NNBGMA0GCSqGSIb3DQEBCwUAMIGqMQswCQYD
VQQGEwJERTEPMA0GA1UECBMGQmF5ZXJuMRUwEwYDVQQHEwxHdW56ZW5oYXVzZW4x
GjAYBgNVBAoTEUhldHpuZXIgT25saW5lIEFHMRIwEAYDVQQLEwlEYXRhYmFzZXMx
GzAZBgNVBAMTEnNxbC55b3VyLXNlcnZlci5kZTEmMCQGCSqGSIb3DQEJARYXcm9v
dEBzcWwueW91ci1zZXJ2ZXIuZGUwHhcNMjIwNjA3MTYyOTUyWhcNMzIwNjA0MTYy
OTUyWjCBqjELMAkGA1UEBhMCREUxDzANBgNVBAgTBkJheWVybjEVMBMGA1UEBxMM
R3VuemVuaGF1c2VuMRowGAYDVQQKExFIZXR6bmVyIE9ubGluZSBBRzESMBAGA1UE
CxMJRGF0YWJhc2VzMRswGQYDVQQDExJzcWwueW91ci1zZXJ2ZXIuZGUxJjAkBgkq
hkiG9w0BCQEWF3Jvb3RAc3FsLnlvdXItc2VydmVyLmRlMIICIjANBgkqhkiG9w0B
AQEFAAOCAg8AMIICCgKCAgEAq1bzb3Mm4HlRNzf1xI1ssFIvaRjCu/ZpUYhh2Rk8
grexQWJ2ZNZtRqd8UPkIxGgJFuHbbfyf4N1QhC7uI/QqOf5VyPrE0WU75BBIvAhh
MH/xeBxvrrMHF/8yTg5RDS1heJ3Y5UzwSoVHvoNR8fOpcSQ1N3jHkSpZLNhUIky/
hSGdZMOaOUTk1IQbvCrvyIQB8QalCtc5fkg72PlX+ACeGfQGoM5jj+gyKfydQg6s
bPSatIxsKr7KcQxxsWRrV1BfROtxXDbDUwFDS18V7vEGzp7qQlyPLNvTVdH6Xk+U
eVT9I1TfTBq4nsVOjOaHUNC0QtRhTJpjyR/SE9MpRq0+d78LQ21wpYQNnB+ukjOK
TW4Slgr7Pk83cIGS5mJWDI786GiQ7LXFLrg3gyG1FiEATyDrfTrNkZQ9VRD/YSco
1pw84xUBwSwANKCrO+l4wFo8A7cSrYPQBpL/3RuxFap5BavX2MbuymK2MO2/8W0H
p8+wn5qnSt0BcrpeNV92UlBRaZHbnl+N/6oGXrt7lCScuRhIyHCftkEX/DQhwxvj
/lIWMWQTyceqQl9QLI7UkxcXsL7NoalO83CH6BP905mZs+PCL9DPagyMceKOLSwm
mWt05OIAECbqUotCqtLZhHcTB1Nnlqi/4VJiASEStzs7hkhCAZmaTkV0+X7quiQJ
l3MCAwEAAaOCARMwggEPMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFCf95RRu/ZgZ
iZIyQCLn7SKJFJFoMIHfBgNVHSMEgdcwgdSAFCf95RRu/ZgZiZIyQCLn7SKJFJFo
oYGwpIGtMIGqMQswCQYDVQQGEwJERTEPMA0GA1UECBMGQmF5ZXJuMRUwEwYDVQQH
EwxHdW56ZW5oYXVzZW4xGjAYBgNVBAoTEUhldHpuZXIgT25saW5lIEFHMRIwEAYD
VQQLEwlEYXRhYmFzZXMxGzAZBgNVBAMTEnNxbC55b3VyLXNlcnZlci5kZTEmMCQG
CSqGSIb3DQEJARYXcm9vdEBzcWwueW91ci1zZXJ2ZXIuZGWCCQDh2gev/TTQRjAN
BgkqhkiG9w0BAQsFAAOCAgEAYNs1ptU+SjBeDMtZY1gXUkoMYN/ujsNwLp64Si2z
De/md+XxQtN01t14MJn7yWdfPudl3WS3b4S9cXx5koLqjPBDk25R2Yb/klcj5AU7
H7bfPR/mHIj/1Xc3US6sEIE1oU3pjQvm6iYWuhKV41CQQAEGdjCS8Y4Y36aaNTB/
4NL4t8ZHE4JKuDHWYUArQcvubPt5yGjkspoFVPlV4ktkw+W2hjBvwCNflE+s8zKl
qEJy+izsxl6+tIz8UXK7++ocBZP4Wxc/GlZQ2g3NWWLMpK0r+4G1MKUs8f5yWsaL
Sswhs15rnN07X9DKbsmZboc0DT8QVqUYl5ErO/baG3Fd3cwk9vUJRDlCeHWKAQDM
Ne6171VKMBVcjd3u9IqL17j2JughrfelH5SfkX7VJnkcS7Gaf2ppJeyedgngLE3A
BeFDhAJ9rQdSAXAzeZC5/6YotR5tDaumYgWtGu5biNocY+f0OHNsuBjjQcIBC7MV
zZ5XET75IaY2LCbTz58a3KrImyYGjKt+WzGfemWHVx9TC6ZOmVXSuPzTevQvpY5q
Wgx7nM25JCPXjhtwS7uBQ+QDhlITYgwgMPyDzzEFUDAblInqgUnj3VfVLTQPx+sL
MZb5eNEJ0316JCcgZJ8HZ+iUL/QjFewpOL+MlMqvUbfLh9jT04BXzSFLT8Cry1Wb
X40=
-----END CERTIFICATE-----

Dies können Sie als Textdatei lokal speichern (z.B. als "sqlca.pem"). Nun können Sie eine verschlüsselte Verbindung aufbauen. Die Verwendung eigener Clientzertifikate ist leider nicht möglich.

Beispiele für den verschlüsselten Zugriff auf PostgreSQL

  • PostgreSQL-Kommandozeile
    • PGSSLMODE=verify-full PGSSLROOTCERT=sqlca.pem psql -h ${SERVER?} -U ${LOGIN?} -d ${DATENBANK?} -W
  • PHP (PDO)
    • $pdo = new PDO('pgsql:host=SERVER;dbname=DATENBANK;sslmode=verify-full;sslrootcert=sqlca.pem;', 'LOGIN', 'PASSWORT');

Gibt es phpMyAdmin auch für PostgreSQL?

phpMyAdmin wurde für MySQL geschrieben und unterstützt PostgreSQL nicht. Aber auch für PostgreSQL gibt es eine webbasierte Verwaltung, die ganz ähnlich wie phpMyAdmin zu bedienen ist. Diese können Sie auf http://phppgadmin.sourceforge.net/ herunterladen. Installieren Sie das Tool in Ihren Account und folgen Sie der Bedienungsanleitung um Ihre PostgreSQL-Datenbanken zu administrieren.

Table of Contents