GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So installieren Sie PostgreSQL unter Debian 11 / Debian 10

PostgreSQL (häufig als Postgres abgekürzt) ist ein objektrelationales Datenbankverwaltungssystem (ORDBMS), das auf Erweiterbarkeit und Einhaltung von Standards Wert legt.

Es verfügt über mehr als 30 Jahre aktive Entwicklung und eine bewährte Architektur, die ihm einen guten Ruf für Zuverlässigkeit, Datenintegrität und Leistung eingebracht hat.

PostgreSQL wird unter der PostgreSQL-Lizenz veröffentlicht und ist für Linux, Microsoft Windows, FreeBSD, OpenBSD und macOS verfügbar.

In diesem Beitrag werden wir sehen, wie PostgreSQL auf Debian 11 / Debian 10 installiert wird.

PostgreSQL-Repository hinzufügen

PostgreSQL veröffentlicht Pakete für das Debian-Betriebssystem über ihr dediziertes Repository, und die Pakete in ihrem Repository sind aktueller als die im OS-Repository verfügbaren.

Aktualisieren Sie zuerst den Repository-Index mit apt Befehl

sudo apt update

Installieren Sie dann die HTTPS-Unterstützung für apt, um Pakete aus dem Internet zu erhalten.

sudo apt install -y curl apt-transport-https

Importieren Sie nun den PostgreSQL-Signaturschlüssel.

# Debian 11

curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /usr/share/keyrings/postgresql-keyring.gpg

# Debian 10

curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

Fügen Sie abschließend die PostgreSQL-Repository-Informationen mit dem folgenden Befehl zum System hinzu.

# Debian 11

echo "deb [signed-by=/usr/share/keyrings/postgresql-keyring.gpg] http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list

# Debian 10

echo "deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list

Installieren Sie PostgreSQL unter Debian

Nachdem Sie das PostgreSQL-Repository hinzugefügt haben, führen Sie den folgenden Befehl aus, um den Repository-Index zu aktualisieren.

sudo apt update

Installieren Sie dann PostgreSQL mit dem folgenden Befehl basierend auf der PostgreSQL-Version, die Sie installieren möchten.

# PostgreSQL 13

sudo apt install -y postgresql-13

# PostgreSQL 12

sudo apt install -y postgresql-12

Inzwischen ist der PostgreSQL-Dienst betriebsbereit. Sie können den Status des Dienstes mit dem folgenden Befehl überprüfen.

sudo systemctl status postgresql

Ausgabe:

 postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
   Active: active (exited) since Wed 2021-09-15 14:19:30 CDT; 42s ago
 Main PID: 3759 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 2343)
   Memory: 0B
   CGroup: /system.slice/postgresql.service

Sep 15 14:19:30 debian.itzgeek.local systemd[1]: Starting PostgreSQL RDBMS...
Sep 15 14:19:30 debian.itzgeek.local systemd[1]: Started PostgreSQL RDBMS.

PostgreSQL-Server konfigurieren

Standardmäßig lauscht PostgreSQL auf dem Localhost (127.0.0.1), was Sie möglicherweise nicht immer möchten, da externe Anwendungen möglicherweise eine Verbindung zur Datenbank herstellen müssen. Also werden wir PostgreSQL so konfigurieren, dass es auf die IP-Adresse des Systems lauscht.

# PostgreSQL 13

sudo nano /etc/postgresql/13/main/postgresql.conf

# PostgreSQL 12

sudo nano /etc/postgresql/12/main/postgresql.conf

Legen Sie die listen_addresses fest zu * oder <IPAddress> .

listen_addresses = '192.168.0.10'

PostgreSQL-Dienst neu starten.

sudo systemctl restart postgresql

Sie können jetzt die netstat verwenden Befehl, um zu bestätigen, ob PostgreSQL auf Port 5432 lauscht oder nicht.

sudo netstat -antup | grep 5432

Ausgabe:

tcp        0      0 192.168.0.10:5432       0.0.0.0:*               LISTEN      5265/postgres

LESEN :netstat-Befehl nicht auf Debian gefunden – Quick Fix

Zugriff auf PostgreSQL

Um die PostgreSQL-Datenbank zu verwalten, müssen Sie sich als postgres anmelden (Linux-Benutzer) und müssen dann mit psql auf die Datenbank-Shell zugreifen Befehl.

sudo -u postgres psql

Ausgabe:

postgres@server:~$ psql
psql (13.4 (Debian 13.4-1.pgdg100+1))
Type "help" for help.

postgres=#
ein

Auf psql Shell, führen Sie den folgenden Befehl aus, um den postgres zu ändern Benutzer (Passwort des Datenbankadministrators.

postgres=# \password

ODER

postgres=# \password postgres

PostgreSQL-Datenbank und Benutzer erstellen

Erstellen Sie zuerst einen Datenbankbenutzer mit dem folgenden Befehl.

CREATE USER mydb_user WITH ENCRYPTED PASSWORD 'password';

Erstellen Sie als Nächstes eine Datenbank mit dem folgenden Befehl.

CREATE DATABASE mydb WITH OWNER mydb_user;

Anschließend können Sie mydb_user Berechtigungen erteilen auf der neu erstellten Datenbank.

GRANT ALL PRIVILEGES ON DATABASE mydb TO mydb_user;

Überprüfen Sie nun, ob der Benutzer erstellt wurde oder nicht.

postgres=# \du

Ausgabe:

postgres=# \du
                                   List of roles
 Role name |                         Attributes                         | Member of
-----------+------------------------------------------------------------+-----------
 mydb_user |                                                            | {}
 postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}

postgres=#

Außerdem können Sie Datenbanken auflisten, um zu sehen, ob Ihre Datenbank mydb ist wurde erstellt.

postgres=# \l

Ausgabe:

postgres=# \l
                                   List of databases
   Name    |   Owner   | Encoding |   Collate   |    Ctype    |    Access privileges
-----------+-----------+----------+-------------+-------------+-------------------------
 mydb      | mydb_user | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/mydb_user          +
           |           |          |             |             | mydb_user=CTc/mydb_user
 postgres  | postgres  | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
 template0 | postgres  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres            +
           |           |          |             |             | postgres=CTc/postgres
 template1 | postgres  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres            +
           |           |          |             |             | postgres=CTc/postgres
(4 rows)

postgres=#

Melden Sie sich schließlich bei mydb an mit dem Datenbankbenutzer mydb_user .

psql -h localhost -d mydb -U mydb_user

Ausgabe:

Password for user mydb_user:
psql (13.4 (Debian 13.4-1.pgdg110+1))
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
Type "help" for help.

mydb=>

Schlussfolgerung

Das ist alles. Ich hoffe, Sie haben gelernt, wie man PostgreSQL unter Debian 11 / Debian 10 installiert.


Debian
  1. So installieren Sie Tomcat 8.5 auf Debian 9

  2. So installieren Sie MongoDB unter Debian 9

  3. So installieren Sie PostgreSQL unter Debian 9

  4. So installieren Sie Nginx unter Debian 9

  5. So installieren Sie PostgreSQL 11/10 auf Debian 9 und Debian 8

So installieren Sie Gitea mit PostgreSQL unter Debian 11

So installieren Sie PostgreSQL unter Debian 11

So installieren Sie Go unter Debian 11

So installieren Sie phpPgAdmin unter Debian 11

So installieren Sie Odoo unter Debian 11

Wie installiere ich PostgreSQL unter Debian 11?