Zum Inhalt springen

PostgreSQL/Debian

Aus Foxwiki
Die 5 zuletzt angesehenen Seiten:  Extensible Authentication Protocol » Systemd-networkd » PostgreSQL/Debian

PostgreSQL/Debian - Beschreibung

Beschreibung

PostgreSQL, auch bekannt als Postgres, ist ein freies und quelloffenes relationales Datenbankmanagementsystem (RDBMS) mit Schwerpunkt auf Erweiterbarkeit und SQL-Konformität

  • PostgreSQL verfügt über eine umfangreiche und gute Hilfe, die die erste Informationsquelle zu diesem Datenbankprodukt sein sollte.
  • Diese Seite beschreibt die wichtigsten Unterschiede zur generischen PostgreSQL-Installation, die von Debian verwendet wird.

Installation

Erforderliche Pakete:

# apt install postgresql postgresql-client

Empfohlene Pakete:

Bitte beachten Sie, dass die prozeduralen Sprachen separat installiert werden (plpgsql ist standardmäßig enthalten).

  • Durchsuchen Sie die Debian-Pakete, um eine Liste der Möglichkeiten zu finden:
# apt search postgresql

PGDG-Repository

Wenn Sie eine andere Version als die derzeit für Ihre laufende DebianRelease verfügbare verwenden müssen, können Sie das offizielle Repository von Postgresql mit einem Skript verwenden, das in postgresql-common unter /usr/share/postgresql-common/pgdg/apt verwaltet wird.postgresql.org.sh

Weitere Informationen finden Sie hier: https://wiki.postgresql.org/wiki/Apt

Benutzerzugriff

Sowohl der Standard-Datenbankbenutzer als auch die Standard-Datenbank heißen „postgres“

Sie benötigen Administratorrechte

Als Root:

# su -c /usr/bin/psql postgres

Wenn Ihr System sudo verwendet, um Administratorrechte zu erhalten:

$ sudo -u postgres psql

Neuer Benutzer und Datenbank

Erstellen Sie mit ‚‘'adduser'‚‘ ein reguläres Benutzerkonto (überspringen Sie diesen Schritt, um ein bestehendes Konto zu verwenden):

# adduser mypguser #aus der normalen Shell

Wechseln Sie zum Benutzer ‚‘'postgres'‚‘ und erstellen Sie einen neuen Datenbankbenutzer und eine Datenbank:

# su - postgres
$ createuser --pwprompt mypguser #aus der normalen Shell
$ createdb -O mypguser mypgdatabase

Verbinden Sie sich als Benutzer mypguser mit der neuen Datenbank

# su - mypguser
$ psql mypgdatabase

oder, wenn der Benutzername des Betriebssystems nicht mit dem Datenbankbenutzernamen übereinstimmt:

$ psql -d mypgdatabase -h localhost -U mypguser

Sie können auch eine ~/.pgpass-Datei verwenden

Fügen Sie eine Zeile für die Authentifizierung hinzu:

$ echo ‚hostname:port:mypgdatabase:mypguser:mypgpassword‘ >> ~/.pgpass

Sichern Sie die Datei

chmod 600 ~/.pgpass

Jetzt können Sie sich ganz einfach verbinden mit

$ psql -d mypgdatabase -h localhost -U mypguser

Weitere Informationen zur Syntax finden Sie hier: https://www.postgresql.org/docs/current/libpq-pgpass.html

Migration

Siehe /usr/share/doc/postgresql-common/README.Debian.gz Abschnitt „Standardcluster und Aktualisierung”

Alternativ können Sie Folgendes anpassen und verwenden:

https://wiki.postgresql.org/wiki/Using_pg_upgrade_on_Ubuntu/Debian

Dokumentation

Einen Überblick über die PostgreSQL-Architektur von Debian, Anweisungen für einen schnellen Einstieg und Verweise auf die Programme und Manpages finden Sie unter /usr/share/doc/postgresql-common/README.Debian.gz.

Tutorial-Dateien

Die PostgreSQL-Dokumentation verweist auf ein Tutorial, das im Paket postgresql-doc enthalten ist.

  • Nach der Installation des Pakets finden Sie weitere Informationen unter /usr/share/doc/postgresql-doc-[version]/tutorial/README.

Auflisten vorhandener Datenbankcluster

Verwenden Sie den Befehl pg_lsclusters, um installierte Cluster zu überprüfen und einige grundlegende Informationen abzurufen, z. B.: Version (Hauptversion), Name, Port, Status (online oder offline), Eigentümer, Datenverzeichnis und Protokolldatei

pg_lsclusters

Ersatz für pg_ctl

pg_ctl ist ein PostgreSQL-Befehlszeilenprogramm, mit dem die Datenbank gesteuert werden kann

  • Debian hat einen Perl-Wrapper für pg_ctl namens /usr/bin/pg_ctlcluster erstellt.
  • Verwenden Sie pg_ctlcluster immer dann, wenn Sie pg_ctl benötigen.
  • Um das Verhalten anzupassen, überprüfen Sie die Datei /etc/postgresql/[version]/[cluster]/pg_ctl.conf.

Debian installiert ein SysV-init-kompatibles (Standard-)Startskript /etc/init.d/postgresql-[version]

  • Es kann zum Starten, Stoppen, Neustarten und Neuladen des Systems verwendet werden
  • Es ruft intern pg_ctlcluster auf

Dateispeicherorte

Debian trennt die Datenbankkonfiguration von den Datenbankdateien, im Gegensatz zur generischen PostgreSQL-Installation, bei der alles im selben Verzeichnis abgelegt wird

  • Beachten Sie, dass Debian mehrere Cluster und sogar verschiedene Versionen von PostgreSQL auf demselben Host zulässt

Konfigurationsdateien: /etc/postgresql/[version]/[cluster]/Binärdateien: /usr/lib/postgresql/[version]Datendateien: /var/lib/postgresql/[version]/[cluster]

Protokolldateien: Bei der Installation von PostgreSQL wird das Protokollverzeichnis /var/log/postgresql/ erstellt.

  • Beim Starten der Datenbank-Engine wird eine Protokolldatei mit dem Namen postgresql-[version]-[cluster].log erstellt.

Ändern der Debian-Standardinstallation

Die Debian-PostgreSQL-Installation ruft automatisch initdb auf, d. h.

  • sie initialisiert den Cluster mit der Standardkodierung und -lokalität
  • Um die Lokalität (und möglicherweise andere Optionen in initdb) zu ändern, löschen Sie den vorhandenen Standardcluster und erstellen Sie einen neuen:
Warnung
Der folgende Vorgang löscht offensichtlich alle Daten in den Cluster-Datenbanken
  • Führen Sie diesen Vorgang unmittelbar nach der Installation des Basispakets aus
  1. Nehmen Sie Root-Rechte an
  2. Führen Sie den folgenden Befehl aus:
    pg_dropcluster --stop <version> main
    Beispiel:
    pg_dropcluster --stop 11 main
  3. Führen Sie initdb mit Ihren Optionen aus
  • Beispiel:
    pg_createcluster --locale de_DE.UTF-8 --start 11 main

Auf der Seite Locale erfahren Sie, wie Sie weitere Locales hinzufügen können

Installation

Aufruf

Optionen

Unix GNU Parameter Beschreibung

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Anwendung

Problembehebung

Konfiguration

Dateien

Datei Beschreibung


Anhang

Siehe auch



Dokumentation

Man-Page

Links

Projekt

Weblinks

  1. https://wiki.debian.org/PostgreSql
  2. PostgreSQL-Pakete in Debian
  3. DebianGis/UpdatingPostGIS (beschreibt auch die Aktualisierung von postgresql)
  4. Offizielle PostgreSQL-Website
  5. http://wiki.postgresql.org/wiki/GUI_Database_Design_Tools
  6. https://wiki.postgresql.org/wiki/Design_Tools
  7. Praktisches PostgreSQL
  8. https://www.cyberciti.biz/faq/howto-add-postgresql-user-account/
  9. Kernel-Dateien für PostgreSQL unter Debian aktivieren