PostgreSQL unter Linux konfigurieren

Bilal Shahid 20 Juni 2023
  1. Grundlegende Einrichtung von PostgreSQL in Linux-Systemen
  2. Benutzernamen erstellen, falls noch nicht in PostgreSQL Linux vorhanden
  3. Erstellen Sie ROLE und DATABASE in der PSQL-Shell
  4. Verwenden Sie das Tool PORT CONNECT, um auf die Datenbank zuzugreifen
  5. Verschiedene Methoden zum Konfigurieren von PostgreSQL unter Linux
PostgreSQL unter Linux konfigurieren

In diesem Tutorial erfahren Sie, wie Sie PostgreSQL unter Linux einrichten. Unser detailliertes Setup konzentriert sich auf Ubuntu oder jede andere Linux-Distribution wie Fedora, Bodhi, PepperMint, BackBox usw.

Grundlegende Einrichtung von PostgreSQL in Linux-Systemen

  1. Installieren Sie PostgreSQL vom Terminal aus.

Für Ubuntu, Debian oder Mint:

Befehl:

sudo apt-get install postgresql

Für Arch-Linux:

Befehl:

sudo pacman -S postgresql

Bei YUM-Installationen wie Fedora, Red Hat usw. müssen Sie Folgendes tun.

  • Holen Sie sich die PostgreSQL-Version URL für den CURL-Befehl hier: URL.
  • Sobald die URL abgerufen wurde, fahren Sie fort, die CURL-Anfrage an diese URL zu senden, um das Repository herunterzuladen.

Befehl:

curl -O [url]
  • Installieren Sie dann das RPM.

Befehl:

rpm -ivh [rpm file name]

Sie können später auch Pakete für diese Distribution herunterladen, wenn Sie dies wünschen.

  1. Verbinden mit der Datenbank mit User Postgres.

Lassen Sie uns einen Befehl ausgeben, der auf unser bin-Verzeichnis der PostgreSQL-Installation verweist.

Befehl:

cd BINPATH (most probably: /var/lib/postgresql/12/main)

Sobald wir uns im Pfad befinden, führen wir den Befehl SUDO -U aus, um eine Verbindung zu unserer Datenbank herzustellen. Führen Sie die Abfrage wie folgt aus:

sudo -u postgres psql template1

TEMPLATE1 ist die Standarddatenbank, aber Sie können jede der definierten anstelle von TEMPLATE1 in der obigen Abfrage verwenden. Sobald Sie verbunden sind, haben Sie nun die angegebene Datenbank eingegeben.

  1. Einstellen des Passworts für die Datenbank POSTGRES.

Sobald Sie sich in der Sitzung befinden, werden Sie Folgendes bemerken:

postgres=# or template1=#

Das bedeutet, dass Sie jetzt in die Datenbanksitzung eingeloggt sind. Lassen Sie uns das Passwort für unsere Root-Datenbank POSTGRES einrichten, indem wir die ALTER-Anweisung wie folgt verwenden:

ALTER USER postgres with encrypted password '[YOUR_PASSWORD]';

Sobald das Passwort geändert wurde, wird die folgende Ausgabe zurückgegeben.

Ausgang:

ALTER ROLE

Melden Sie sich mit dem Befehl \q von Ihrer Sitzung ab und melden Sie sich dann erneut an, um die gewünschten Änderungen zu sehen.

  1. Modifikation von PG_HBA.CONF für Verbindungen

Um eine beliebige Datei in Linux zu ändern, verwenden Sie VIM, einen Konsoleneditor zum Ändern von Dateien. Wenn Sie VIM nicht installiert haben, können Sie den folgenden Befehl herunterladen und ausführen.

Befehl:

sudo apt install VIM;

Bearbeiten Sie mit VIM die Datei PG_HBA.CONF im Verzeichnis. Der Zugriff auf das Verzeichnis MAIN wird mit dem Befehl CD verhindert.

Befehl:

sudo vim \var\lib\postgresql\12\main\pg_hba.conf

Falls Sie gerade Linien und keine Daten darin sehen, fahren Sie fort und hängen Sie die folgende Zeile an die Datei an:

local all postgres md5

Drücken Sie dann ESC und geben Sie :wqa ein, um den Editor mit EXIT zu verlassen.

  1. Erstellen einer Datenbank und Anmelden als Postgres

Um eine neue Datenbank zu erstellen, verwenden Sie den folgenden Befehl:

sudo -u postgres createdb NEW_DB

Um dies zu überprüfen, verwenden Sie den folgenden Befehl, um sich mit einem Passwort anzumelden.

psql - U postgres -W

Manchmal kann auch nach Eingabe des richtigen Passworts für POSTGRES der folgende Fehler zurückgegeben werden.

psql: error: FATAL: Peer authentication failed for user 'postgres'

Dies ist ausschließlich darauf zurückzuführen, dass die Option PEER für Verbindungen in PG_HBA.CONF nicht geändert wurde.

Das ist alles, was zum Ausführen einer PostgreSQL-Sitzung unter Linux benötigt wird. Es gibt auch andere Möglichkeiten und Methoden, die weiter unten besprochen werden.

Benutzernamen erstellen, falls noch nicht in PostgreSQL Linux vorhanden

In einigen Versionen ERSTELLEN wir einen Benutzer durch den folgenden Befehl.

Befehl:

sudo -u template1 createuser --superuser [user_name]

Sobald der Benutzer erstellt ist, können wir uns zunächst einfach ohne Passwort anmelden. Verwenden Sie die ALTER-Anweisung, um das Passwort später festzulegen.

Der Benutzer POSTGRES arbeitet als Root-Benutzer für die PostgreSQL-Installation auf einem System. Es muss Schreibzugriff auf zugrunde liegende Dateien haben und kann für viel höhere Sicherheitsfunktionen verwendet werden.

Erstellen Sie ROLE und DATABASE in der PSQL-Shell

Sobald Sie sich bei der PSQL-Shell angemeldet haben, können Sie die folgenden Abfragen verwenden, um eine neue Datenbank oder einen neuen Benutzer zu ERSTELLEN.

CREATE ROLE [user_name] LOGIN PASSWORD 'abc123';
CREATE DATABASE [database name] WITH OWNER = [user_name];

Verwenden Sie das Tool PORT CONNECT, um auf die Datenbank zuzugreifen

Eine andere Methode, die wir verwenden können, um als Benutzer auf einem anderen System eine Verbindung zu einer PostgreSQL-Sitzung herzustellen, ist die Verwendung des folgenden Befehls.

$ psql -h [host_name] -d [database_name] -U [_username] -p [port_number]

Dies hilft, verschiedene Benutzer mit unserem System zu verbinden. Wir können diesen Befehl verwenden, um unseren Benutzer so zu konfigurieren, dass er in einer PostgreSQL-Sitzung ausgeführt wird, die auf einem Server gehostet wird, und dann Abfragen ausgibt und in dieser Datenbank arbeitet.

Möglicherweise müssen Sie die DATENBANK angeben, mit der Sie sich verbinden möchten, zusammen mit dem BENUTZER, mit dem Sie sich verbinden möchten:

psql -U [user_name] -d [db_name]

Verschiedene Methoden zum Konfigurieren von PostgreSQL unter Linux

Die Konfiguration soll einfach und effizient sein. Manchmal müssen wir beim Versuch, uns als Benutzer mit PSQL zu verbinden, immer zuerst den PATH erwähnen und dann die Verbindung herstellen.

Dies kann durch die Verwendung des Folgenden vereinfacht werden:

export PATH=$PATH: [our_bin_directory_path]

Dieses BIN_DIRECTORY ist meistens der var/lib/postgresql/.. oder ein ähnlicher Ordner, der bei der Installation erstellt wird.

Sobald die Variable PATH eingerichtet wurde, ist es an der Zeit, daran zu arbeiten, den SERVICE zu initialisieren, damit er funktioniert. Meistens geschieht dies automatisch, aber um auf der sicheren Seite zu sein, können wir Folgendes tun:

//initialization
sudo service postgresql-[version_number] initdb

//starting
sudo service postgresql-[version_number] start

Auf FEDORA- oder YUM-Systemen können die Befehle wie folgt ausgegeben werden:

sudo systemctl start postgresql-[version_number]
sudo systemctl enable postgresql-[version_number]

Sie können PGADMIN sogar auf Fedora oder anderen Systemen installieren, um Ihnen das Leben zu erleichtern.

Bilal Shahid avatar Bilal Shahid avatar

Hello, I am Bilal, a research enthusiast who tends to break and make code from scratch. I dwell deep into the latest issues faced by the developer community and provide answers and different solutions. Apart from that, I am just another normal developer with a laptop, a mug of coffee, some biscuits and a thick spectacle!

GitHub