So installieren Sie PostgreSQL mithilfe des Quellcodes unter Linux
PostgreSQL, ein relationales Open-Source-Datenbankverwaltungssystem, ist weithin für seine robusten Funktionen und Erweiterbarkeit bekannt. Während viele Linux-Distributionen PostgreSQL über ihre Paketmanager bereitstellen, ermöglicht die Installation von der Quelle eine bessere Anpassung und Kontrolle.
In diesem Artikel erklären wir, wie Sie PostgreSQL 16 mithilfe der Quellcode-Installation auf Linux-Systemen installieren.
Für diejenigen, die eine einfachere Installationsmethode über den Paketmanager der Distribution suchen, befolgen Sie bitte die folgenden Anleitungen:
Voraussetzungen
Bevor Sie mit dem PostgreSQL-Installationsprozess beginnen, stellen Sie sicher, dass Ihr System die folgenden Voraussetzungen erfüllt:
- Eine Linux-Distribution (in diesem Handbuch verwenden wir zu Demonstrationszwecken Debian).
- Ein Linux-System mit einem Nicht-Root-Benutzer mit Sudo-Berechtigungen.
- Wichtige Entwicklungstools wie GCC und Make sind installiert.
1. Installieren Sie Voraussetzungen unter Linux
Installieren Sie zunächst wichtige Entwicklungstools wie GCC und Make mithilfe des Distributionspaketmanagers wie gezeigt.
Auf RHEL-basierten Distributionen wie CentOS, Fedora, Rocky Linux und Alma Linux:
sudo yum groupinstall development-tools
sudo yum install zlib-devel readline-devel libicu-devel
Auf Debian-basierten Distributionen wie Ubuntu und Linux Mint.
sudo apt install gcc build-essential zlib1g-dev libreadline6-dev libicu-dev pkg-config
2. Laden Sie den PostgreSQL-Quellcode herunter
Sobald die erforderlichen Voraussetzungen installiert sind, laden Sie die Quellcode-TAR-Datei von der offiziellen Postgres-Website herunter, indem Sie den folgenden wget-Befehl direkt auf dem System verwenden. Zum Zeitpunkt des Schreibens ist die neueste Version PostgreSQL 16.1.
wget https://ftp.postgresql.org/pub/source/v16.1/postgresql-16.1.tar.bz2
Als nächstes verwenden Sie den Befehl tar, um die heruntergeladene Tarball-Datei zu extrahieren. Ein neues Verzeichnis mit dem Namen postgresql-16.1 wird erstellt.
tar -xvf postgresql-16.1.tar.bz2
cd postgresql-16.1/
ls -l
Beispielausgabe:
-rw-r--r--. 1 tecmint tecmint 365 Nov 7 03:34 aclocal.m4
drwxr-xr-x. 2 tecmint tecmint 4096 Nov 7 03:47 config
-rwxr-xr-x. 1 tecmint tecmint 584560 Nov 7 03:34 configure
-rw-r--r--. 1 tecmint tecmint 87292 Nov 7 03:34 configure.ac
drwxr-xr-x. 61 tecmint tecmint 4096 Nov 7 03:47 contrib
-rw-r--r--. 1 tecmint tecmint 1192 Nov 7 03:34 COPYRIGHT
drwxr-xr-x. 3 tecmint tecmint 4096 Nov 7 03:47 doc
-rw-r--r--. 1 tecmint tecmint 4288 Nov 7 03:34 GNUmakefile.in
-rw-r--r--. 1 tecmint tecmint 277 Nov 7 03:34 HISTORY
-rw-r--r--. 1 tecmint tecmint 64601 Nov 7 03:48 INSTALL
-rw-r--r--. 1 tecmint tecmint 1875 Nov 7 03:34 Makefile
-rw-r--r--. 1 tecmint tecmint 102017 Nov 7 03:47 meson.build
-rw-r--r--. 1 tecmint tecmint 6266 Nov 7 03:34 meson_options.txt
-rw-r--r--. 1 tecmint tecmint 1213 Nov 7 03:34 README
drwxr-xr-x. 16 tecmint tecmint 4096 Nov 7 03:48 src
3. Konfigurieren Sie PostgreSQL aus der Quelle
Da es sich bei Postgres um eine Open-Source-Datenbank handelt, kann sie je nach Bedarf/Anforderungen aus dem Quellcode erstellt werden. Wir können den Erstellungs- und Installationsprozess anpassen, indem wir eine oder mehrere Befehlszeilenoptionen für verschiedene zusätzliche Funktionen bereitstellen.
Verwenden Sie den folgenden Befehl, um Hilfe zu verschiedenen Optionen und zur Konfigurationsverwendung zu erhalten, wie gezeigt.
./configure --help
Führen Sie nun das Konfigurationsskript aus, das Ihr System auf Abhängigkeiten überprüft und den Build entsprechend konfiguriert.
./configure
4. Installieren Sie PostgreSQL von der Quelle
Verwenden Sie nach der Konfiguration die folgenden Befehle, um PostgreSQL aus der Quelle zu erstellen und zu installieren.
make
sudo make install
5. Postgres-Benutzer erstellen
Erstellen Sie nun einen postgres-Benutzer und ein Verzeichnis, das als Datenverzeichnis für die Initialisierung des Datenbankclusters verwendet werden soll. Der Besitzer dieses data-Verzeichnisses sollte ein postgres-Benutzer sein und die Berechtigungen sollten 700 sein. Außerdem sollte zur Vereinfachung ein Pfad für Postgresql-Binärdateien festgelegt werden.
sudo useradd postgres
sudo passwd postgres
sudo mkdir -p /pgdatabase/data
sudo chown -R postgres: /pgdatabase/data
sudo sh -c "echo 'export PATH=$PATH:/opt/PostgreSQL/bin' > /etc/profile.d/postgres.sh"
source /etc/profile.d/postgres.sh
6. Initialisierung der Postgres-Datenbank
Initialisieren Sie nun die Datenbank mit dem folgenden Befehl als postgres-Benutzer, bevor Sie irgendwelche postgres-Befehle verwenden.
su postgres
initdb -D /pgdatabase/data/ -U postgres -W
Dabei ist -D
der Speicherort für diesen Datenbankcluster oder wir können sagen, es ist das Datenverzeichnis, in dem wir den Datenbankcluster initialisieren möchten, -U
für den Datenbank-Superuser-Namen und -W
für die Passwortabfrage für den Datenbank-Superuser.
Weitere Informationen und Optionen finden Sie unter initdb --help
.
7. Starten Sie den PostgreSQL-Dienst
Starten Sie nach der Initialisierung der Datenbank den Datenbankcluster. Wenn Sie den Port ändern oder die Adresse des Servers abhören müssen, bearbeiten Sie die Datei /pgdatabase/data/postgresql.conf im Datenverzeichnis von Der Datenbankserver.
nano /pgdatabase/data/postgresql.conf
Starten Sie nun den PostgreSQL-Dienst.
pg_ctl -D /pgdatabase/data/ start
Überprüfen Sie nach dem Starten der Datenbank den Status des postgres-Serverprozesses mit den folgenden ps- und netstat-Befehlen.
ps -ef |grep -i postgres
netstat -apn |grep -i 51751
Wir können sehen, dass der Datenbankcluster einwandfrei läuft und Startprotokolle an dem Speicherort gefunden werden können, der beim Starten des Datenbankclusters mit der Option -l
angegeben wurde.
pg_ctl -D /pgdatabase/data/ -l logfile start
8. Stellen Sie eine Verbindung zu PostgreSQL her
Stellen Sie nun eine Verbindung zum Datenbankcluster her und erstellen Sie mit den folgenden Befehlen eine Datenbank.
psql -p 5432
postgres=# create database test;
postgres=# \l to list all databases in cluster
postgres=# \q to quit form postgres console
Wenn Sie nach einem grafischen Tool namens pgAdmin zur Verwaltung Ihres PostgreSQL suchen, befolgen Sie diese Anleitungen, um pgAdmin auf Ihrer Linux-Distribution zu installieren.
Abschluss
Sie haben PostgreSQL erfolgreich aus dem Quellcode auf Ihrem Linux-System installiert. Dieser Prozess bietet Flexibilität und Kontrolle über Ihre PostgreSQL-Installation, sodass Sie sie an Ihre spezifischen Anforderungen anpassen können.