So installieren Sie die PostgreSQL-Datenbank in Debian 10
Wichtig ist, PostgreSQL Mit dieser Option können Sie Ihre eigenen Datentypen definieren, benutzerdefinierte Funktionen hinzufügen und sogar Code aus verschiedenen Programmiersprachen wie C / C ++, Java usw. schreiben, ohne Ihre Datenbank neu kompilieren zu müssen.
PostgreSQL wird von bekannten Tech-Unternehmen wie Apple, Fujitsu, Red Hat, Cisco, Juniper Network usw. verwendet.
In diesem Artikel zeigen wir Ihnen, wie Sie installieren, sichern und konfigurieren PostgreSQL Datenbankserver in Debian 10.
Anforderung:
- Installieren Sie einen Debian 10 (Buster) Minimal Server
PostgreSQL Server unter Debian 10 installieren
Installieren PostgreSQL Verwenden Sie für den Datenbankserver den Standard-APT-Paketmanager, der installiert wird PostgreSQL 11 Server und Client.
# apt install postgresql-11 postgresql-client-11
Auf Debian, wie alle anderen Dämonen, die Postgres Die Datenbank wird sofort nach Abschluss der Paketinstallation initialisiert (siehe folgenden Screenshot).
Um zu überprüfen, ob die Postgres Datenbank ist wirklich initialisiert, können Sie die verwenden pg_ist schon Dienstprogramm, das den Verbindungsstatus eines PostgreSQL-Servers wie folgt überprüft.
# pg_isready
Außerdem unter System, das Postgres Der Dienst wird ebenfalls automatisch gestartet und kann beim Systemstart gestartet werden. Führen Sie den folgenden Befehl aus, um sicherzustellen, dass der Dienst ordnungsgemäß ausgeführt wird.
# systemctl status postgresql
Im Folgenden finden Sie weitere nützliche systemctl-Befehle zum Verwalten des Postgres-Dienstes unter systemd.
# systemctl start postgresql # systemctl restart postgresql # systemctl stop postgresql # systemctl reload postgresql #this reloads the service configuration
Sichern und Konfigurieren der PostgreSQL-Datenbank
Standardmäßig ist die Postgres Verwendet das Rollenkonzept zum Verwalten von Datenbankzugriffsberechtigungen, und Datenbankrollen sind konzeptionell vollständig von Betriebssystembenutzern getrennt. Eine Rolle kann ein Benutzer oder eine Gruppe sein, und eine Rolle mit Anmelderechten wird als Benutzer bezeichnet.
Ein frisch initialisiertes System enthält immer eine vordefinierte Rolle namens postgreshat den gleichen Namen wie das aufgerufene Benutzerkonto des Betriebssystems postgres, mit dem auf die psql (Postgres Muschel) und andere Datenbankprogramme.
Das Postgres-Systembenutzerkonto ist nicht mit einem Kennwort geschützt. Um es zu sichern, können Sie ein Kennwort mit dem Kennwort erstellen passwd Dienstprogramm.
# passwd postgres
Auch der Postgres Die Rolle (oder der Benutzer der Verwaltungsdatenbank, wenn Sie möchten) ist standardmäßig nicht gesichert. Sie müssen es auch mit einem Passwort sichern. Wechseln Sie nun zu postgres Systembenutzerkonto und postgres Rolle (denken Sie daran, ein sicheres und sicheres Passwort festzulegen) wie gezeigt.
# su - postgres # psql -c "ALTER USER postgres WITH PASSWORD 'securepass_here';"
Dann verlassen Sie die postgres Konto, um mit dem Leitfaden fortzufahren.
Client-Authentifizierung konfigurieren
Die Haupt Postgres Konfigurationsdatei befindet sich unter /etc/postgresql/11/main/postgresql.conf. Zusätzlich zu dieser Datei, Postgres verwendet zwei weitere manuell bearbeitete Konfigurationsdateien, die die Clientauthentifizierung steuern.
Die Clientauthentifizierung wird von der gesteuert /etc/postgresql/11/main/pg_hba.conf Konfigurationsdatei. Postgres bietet viele verschiedene Clientauthentifizierungsmethoden, einschließlich der kennwortbasierten Authentifizierung. Clientverbindungen werden basierend auf der Clienthostadresse, der Datenbank und dem Benutzer authentifiziert.
Wenn Sie sich für die Verwendung entscheiden passwortbasierte Authentifizierungkönnen Sie eine der folgenden 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-Hash bzw. Klartext.
Verwenden von MD5-Passwortauthentifizierung Verhindert das Schnüffeln von Passwörtern durch Hacker und vermeidet das Speichern von Passwörtern auf dem Server im Klartext. Die Kennwortmethode kann nur sicher verwendet werden, wenn die Verbindung durch SSL-Verschlüsselung geschützt ist.
In diesem Handbuch wird gezeigt, wie Sie konfigurieren MD5-Passwortauthentifizierung zur Clientauthentifizierung.
# vim /etc/postgresql/11/main/pg_hba.conf
Suchen Sie nach der folgenden Zeile und ändern Sie die Authentifizierungsmethode in md5
wie im Screenshot gezeigt.
local all all md5
Speichern Sie die Änderungen in der Datei und beenden Sie sie. Wenden Sie dann die letzten Änderungen an, indem Sie die neu starten Postgres Service wie folgt.
# systemctl restart postgresql
Erstellen einer neuen Datenbank und einer neuen Datenbankrolle / eines neuen Benutzers in PostgreSQL
In diesem letzten Abschnitt wird gezeigt, wie ein neuer Datenbankbenutzer und eine Datenbankrolle zum Verwalten erstellt werden. Wechseln Sie zunächst zu postgres Konto und öffnen Sie die Postgres-Shell wie folgt.
# su - postgres $ psql
So erstellen Sie eine Datenbank namens “Test_db” Führen Sie den folgenden SQL-Befehl aus.
postgres=# CREATE DATABASE test_db;
Erstellen Sie dann einen Datenbankbenutzer (eine Rolle mit Anmelderechten), der die neue Datenbank wie folgt verwaltet.
postgres=#CREATE USER test_user PASSWORD ‘[email protected]_here’; #assumes login function by default
So verbinden Sie sich mit dem test_db als Benutzer test_userFühren Sie den folgenden Befehl aus.
$ psql -d test_db -U test_user
Weitere Informationen finden Sie in der PostgreSQL 11-Dokumentation.
Fazit
Das ist wenn für jetzt! In diesem Handbuch haben wir gezeigt, wie Sie installieren, sichern und konfigurieren PostgreSQL Datenbankserver in Debian 10. Haben Sie Fragen oder Anregungen? Verwenden Sie das Kommentarformular unten, um uns zu erreichen.