PostgreSQL/Debian: Unterschied zwischen den Versionen
K Textersetzung - „<div style="column-count:3">“ durch „<div style="column-count:2">“ |
|||
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Beschreibung | '''{{BASEPAGENAME}}''' - Beschreibung | ||
== Beschreibung == | |||
[https://en.wikipedia.org/wiki/PostgresSQL PostgreSQL], auch bekannt als Postgres, ist ein freies und quelloffenes relationales Datenbankmanagementsystem (RDBMS) mit Schwerpunkt auf Erweiterbarkeit und SQL-Konformität | [https://en.wikipedia.org/wiki/PostgresSQL 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. | |||
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. | * Diese Seite beschreibt die wichtigsten Unterschiede zur generischen PostgreSQL-Installation, die von Debian verwendet wird. | ||
Zeile 128: | Zeile 129: | ||
Auf der Seite [https://wiki.debian.org/Locale Locale] erfahren Sie, wie Sie weitere Locales hinzufügen können | Auf der Seite [https://wiki.debian.org/Locale Locale] erfahren Sie, wie Sie weitere Locales hinzufügen können | ||
== | == Installation == | ||
== Aufruf == | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
</syntaxhighlight> | |||
=== Optionen === | |||
{| class="wikitable sortable options gnu big" | |||
|- | |||
! Unix !! GNU !! Parameter !! Beschreibung | |||
|- | |||
| || || || | |||
|- | |||
|} | |||
=== Parameter === | |||
=== Umgebungsvariablen === | |||
=== Exit-Status === | |||
{| class="wikitable options col1center big" | |||
|- | |||
! Wert !! Beschreibung | |||
|- | |||
| 0 || Erfolg | |||
|- | |||
| >0 || Fehler | |||
|} | |||
== Anwendung == | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
</syntaxhighlight> | |||
=== Problembehebung === | |||
== Konfiguration == | |||
=== Dateien === | |||
{| class="wikitable options big" | |||
|- | |||
! Datei !! Beschreibung | |||
|- | |||
| || | |||
|- | |||
| || | |||
|} | |||
<noinclude> | |||
== | == Anhang == | ||
=== Siehe auch === | |||
<div style="column-count:2"> | |||
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree> | |||
</div> | |||
---- | |||
{{Special:PrefixIndex/{{BASEPAGENAME}}/}} | |||
=== Dokumentation === | |||
; Man-Page | |||
<!-- | |||
# [https://manpages.debian.org/stable/procps/pgrep.1.de.html prep(1)] | |||
; Info-Pages | |||
--> | |||
=== Links === | |||
==== Projekt ==== | |||
==== Weblinks ==== | |||
# https://wiki.debian.org/PostgreSql | # https://wiki.debian.org/PostgreSql | ||
# [https://packages.debian.org/postgresql PostgreSQL-Pakete in Debian] | |||
# [https://wiki.debian.org/DebianGis/UpdatingPostGIS DebianGis/UpdatingPostGIS] (beschreibt auch die Aktualisierung von postgresql) | |||
# [https://www.postgresql.org/ Offizielle PostgreSQL-Website] | # [https://www.postgresql.org/ Offizielle PostgreSQL-Website] | ||
# [http://wiki.postgresql.org/wiki/GUI_Database_Design_Tools http://wiki.postgresql.org/wiki/GUI_Database_Design_Tools] | # [http://wiki.postgresql.org/wiki/GUI_Database_Design_Tools http://wiki.postgresql.org/wiki/GUI_Database_Design_Tools] | ||
Zeile 142: | Zeile 205: | ||
[[Kategorie:PostgreSQL]] | [[Kategorie:PostgreSQL]] | ||
</noinclude> |
Aktuelle Version vom 28. Juni 2025, 11:15 Uhr
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:
- postgresql-doc – PostgreSQL-Dokumentation
- phppgadmin – Webbasiertes Verwaltungstool für PostgreSQL
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
- Nehmen Sie Root-Rechte an
- Führen Sie den folgenden Befehl aus:
pg_dropcluster --stop <version> main
Beispiel:
pg_dropcluster --stop 11 main - 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
- https://wiki.debian.org/PostgreSql
- PostgreSQL-Pakete in Debian
- DebianGis/UpdatingPostGIS (beschreibt auch die Aktualisierung von postgresql)
- Offizielle PostgreSQL-Website
- http://wiki.postgresql.org/wiki/GUI_Database_Design_Tools
- https://wiki.postgresql.org/wiki/Design_Tools
- Praktisches PostgreSQL
- https://www.cyberciti.biz/faq/howto-add-postgresql-user-account/
- Kernel-Dateien für PostgreSQL unter Debian aktivieren