So installieren Sie die PostgreSQL -Datenbank in Debian 10

So installieren Sie die PostgreSQL -Datenbank in Debian 10

PostgreSQL (manchmal bezeichnet als als Postgres) ist das fortschrittlichste Open-Source-Datenbanksystem für allgemeine und objektrelationale Datenbank mit einer bewährten Architektur, die auf allen wichtigen Betriebssystemen ausgeführt wird. Es handelt sich um eine hohe Leistung, stabile, skalierbare und erweiterbare Datenbanksysteme, die eine erstaunliche Datenintegrität bietet und leistungsstarke Add-Ons unterstützt.

Wichtig, PostgreSQL Ermöglicht Ihnen, Ihre eigenen Datentypen zu definieren, benutzerdefinierte Funktionen hinzuzufügen, sogar Code aus verschiedenen Programmiersprachen wie C/C ++, Java usw. zu schreiben, ohne Ihre Datenbank neu zu kompilieren.

PostgreSQL wird von bekannten Technologieunternehmen wie Apple, Fujitsu, Red Hat, Cisco, Juniper Network usw. verwendet.

In diesem Artikel zeigen wir Ihnen, wie Sie installieren, sichern und konfigurieren können PostgreSQL Datenbanken Server in Debian 10.

Erfordernis:

  1. Installieren Sie einen minimalen Server von Debian 10 (Buster)

Installieren von PostgreSQL Server auf Debian 10

Installieren PostgreSQL Datenbankserver, verwenden Sie den Standard -APT -Paket -Manager, der installiert wird PostgreSQL 11 Server und Client.

# APT INSTALLEN SIE POSTGRESQL-11 POSTGRESQL-CLIient-11 
Installieren Sie Postgresql in Debian 10

An Debian, Wie alle anderen Daemons die Postgres Die Datenbank wird unmittelbar nach Abschluss der Paketinstallation initialisiert, wie im folgenden Screenshot gezeigt.

PostgreSQL -Datenbankinitialisierung

Um zu überprüfen, ob die Postgres Die Datenbank ist wirklich initialisiert, Sie können die verwenden pg_isready Dienstprogramm, das den Verbindungsstatus eines PostgreSQL -Servers wie folgt überprüft.

# pg_isready 
Überprüfen Sie die Datenbankinitialisierung

Außerdem unter systemd, Die Postgres Der Service wird auch automatisch gestartet und aktiviert, um mit dem System Start zu starten. Führen Sie den folgenden Befehl aus, um sicherzustellen, dass der Service in Betrieb ist.

# Systemctl Status PostgreSQL 
Überprüfen Sie den Status des PostgreSQL

Im Folgenden finden Sie weitere nützliche SystemeCTL -Befehle zum Manager des Postgres -Dienstes unter Systemd.

# SystemCTL Start postgresql # SystemCTL Neustart postgresql # systemCTL STOP PostgreSQL # SystemCTL RELOAD POSTGRESQL #DIS RELUTS DIE SERVICE -Konfiguration 

Sichern und Konfigurieren der PostgreSQL -Datenbank Sicherung und Konfiguration

Standardmäßig die Postgres Verwendet das Konzept der Rollen, um Datenbankzugriffsberechtigungen zu verwalten, und Datenbankrollen sind konzeptionell vollständig von den Benutzern des Betriebssystems getrennt. Eine Rolle kann ein Benutzer oder eine Gruppe sein, und eine Rolle, die das Recht hat, wird als Benutzer bezeichnet.

Ein frisch initialisiertes System enthält immer eine vordefinierte Rolle genannt Postgres, Es hat den gleichen Namen wie das Benutzerkonto des Betriebssystems namens Postgres, welches verwendet wird, um auf die zuzugreifen PSQL (Postgres Shell) und andere Datenbankprogramme.

Das Postgres -System -Benutzerkonto ist nicht mit einem Kennwort geschützt, um es sich zu sichern. Sie können ein Kennwort mit dem erstellen Paswd -Dienstprogramm.

# Passwd Postgres 
Stellen Sie das Passwort für Postgres -Benutzer fest

Auch der Postgres Rolle (oder Verwaltungsdatenbankbenutzer, wenn Sie möchten) nicht standardmäßig gesichert wird. Sie müssen es auch mit einem Passwort sichern. Wechseln Sie nun auf die Postgres Systembenutzerkonto und Postgres Rolle (denken Sie daran, ein starkes und sicheres Passwort festzulegen) wie gezeigt.

# su - postgres # psql -c "Ändern Sie Benutzer Postgres mit Passwort 'SecurePass_here';" 
Sichere postgres admin -Rolle

Dann beenden Sie die Postgres Konto, um mit dem Leitfaden fortzufahren.

Konfigurieren der Client -Authentifizierung

Die Haupt Postgres Die Konfigurationsdatei befindet sich unter /etc/postgresql/11/main/postgresql.Conf. Zusätzlich zu dieser Datei, Postgres Verwendet zwei andere manuell bearbeitete Konfigurationsdateien, die die Client-Authentifizierung steuern.

Die Client -Authentifizierung wird von der gesteuert /etc/postgresql/11/main/pg_hba.Conf Konfigurationsdatei. Postgres bietet viele verschiedene Client-Authentifizierungsmethoden, einschließlich kennwortbasierter Authentifizierung. Client -Verbindungen werden basierend auf der Client -Host -Adresse, Datenbank und Benutzer authentifiziert.

Wenn Sie sich für die Verwendung entscheiden Passwortbasierte Authentifizierung, Sie können eine dieser Methoden implementieren: MD5 oder Passwort die ähnlich funktionieren, mit Ausnahme der Art und Weise, wie das Passwort über die Verbindung übertragen wird, nämlich MD5-Hashed und Clear-Text.

Verwendung MD5 -Kennwortauthentifizierung Wenden Sie das Passwort nach Hackern ab und vermeiden es, Kennwörter auf dem Server im Klartext zu speichern. Die Kennwortmethode kann nur sicher verwendet werden, wenn die Verbindung durch SSL -Verschlüsselung geschützt ist.

Für diese Anleitung zeigen wir, wie man konfiguriert wird MD5 -Kennwortauthentifizierung Für die Client -Authentifizierung.

# vim/etc/postgresql/11/main/pg_hba.Conf 

Suchen Sie nach der folgenden Zeile und ändern Sie die Authentifizierungsmethode auf MD5 Wie im Screenshot gezeigt.

lokal alle alle MD5 
Konfigurieren Sie die Client -Authentifizierungsmethode

Speichern Sie die Änderungen in der Datei und beenden Sie sie. Wenden Sie dann die jüngsten Änderungen an, indem Sie die neu starten Postgres Service wie folgt.

# SystemCTL Neustart PostgreSQL 

Erstellen einer neuen Datenbank- und Datenbankrolle/des Benutzer in postgreSQL

In diesem letzten Abschnitt zeigen wir, wie Sie einen neuen Datenbankbenutzer und eine Datenbankrolle erstellen, um ihn zu verwalten. Wechseln Sie zunächst auf die Postgres Konto und öffnen Sie die Postgres -Shell wie folgt.

# Su - Postgres $ psql 

So erstellen Sie eine Datenbank mit dem Namen "Test_db" Führen Sie den folgenden SQL -Befehl aus.

postgres =# Datenbank test_db; 

Erstellen Sie dann einen Datenbankbenutzer (eine Rolle mit Anmeldemrechten), die die neue Datenbank wie folgt verwaltet.

postgres =#user test_user password '[E -Mail geschützt] _here'; #Assumes Login -Funktion standardmäßig 

Sich mit dem verbinden test_db als Benutzer test_user, Führen Sie den folgenden Befehl aus.

 $ psql -d test_db -u test_user 
Erstellen Sie eine neue Postgres -Datenbank

Weitere Informationen finden Sie in der Dokumentation PostgreSQL 11.

Abschluss

Das ist, wenn vorerst! In diesem Handbuch haben wir gezeigt, wie man installiert, sicher und konfiguriert ist PostgreSQL Datenbanken Server in Debian 10. Haben Sie Fragen oder Gedanken zu teilen? Verwenden Sie das folgende Kommentarformular, um uns zu erreichen.