pgAdmin Installations- und Konfigurationsanleitung
pgAdmin ist eine leistungsstarke Open-Source-Plattform zur Administration und Entwicklung von PostgreSQL und verwandten Datenbankmanagementsystemen. Entwickelt mit Python und jQuery unterstützt es alle PostgreSQL-Funktionen. Mit pgAdmin können Sie Aufgaben ausführen, die von der Erstellung von SQL-Abfragen bis hin zur Überwachung von Datenbanken und der Konfiguration fortschrittlicher Architekturen reichen.
pgAdmin is a powerful open-source platform for administering and developing PostgreSQL and related database management systems. Built with Python and jQuery, it fully supports all PostgreSQL features. pgAdmin allows you to perform tasks ranging from writing SQL queries to monitoring databases and configuring advanced architectures.
Voraussetzungen / Prerequisites
Um dieses Tutorial zu befolgen, stellen Sie sicher, dass Sie Folgendes haben:
- Einen Ubuntu 18.04-Server mit einem Benutzer, der über sudo-Rechte verfügt, sowie eine mit ufw konfigurierte Firewall.
- Installiertes und konfiguriertes Nginx als Reverse-Proxy für
http://unix:/tmp/pgadmin4.sock.
- PostgreSQL, das mit einer dedizierten Rolle und Datenbank installiert ist, die pgAdmin verwenden kann.
- Python 3 und venv auf dem Server installiert.
To follow this tutorial, ensure you have:
- An Ubuntu 18.04 server with a non-root user having sudo privileges and a firewall configured using ufw.
- Nginx installed and set up as a reverse proxy for
http://unix:/tmp/pgadmin4.sock.
- PostgreSQL installed with a dedicated role and database for pgAdmin to connect to.
- Python 3 and venv installed on the server.
Schritt 1 — Installation von pgAdmin und seinen Abhängigkeiten
Derzeit ist die neueste Version von pgAdmin 4 verfügbar, die empfohlen wird, da die ältere Version pgAdmin 3 veraltet ist. Dieser Schritt deckt die Installation von pgAdmin 4 in einer virtuellen Umgebung sowie die Einrichtung der erforderlichen Abhängigkeiten ab.
Update des Paketindex des Servers:
sudo apt update
To begin, update your server’s package index:
sudo apt update
Installieren Sie die erforderlichen Abhängigkeiten:
sudo apt install libgmp3-dev libpq-dev
Install required dependencies:
sudo apt install libgmp3-dev libpq-dev
Erstellen Sie Verzeichnisse für Sitzungsdaten, Speicher und Protokolle:
sudo mkdir -p /var/lib/pgadmin4/sessions
sudo mkdir /var/lib/pgadmin4/storage
sudo mkdir /var/log/pgadmin4
Create directories for session data, storage, and logs:
sudo mkdir -p /var/lib/pgadmin4/sessions
sudo mkdir /var/lib/pgadmin4/storage
sudo mkdir /var/log/pgadmin4
Passen Sie die Besitzrechte für diese Verzeichnisse an:
sudo chown -R sammy:sammy /var/lib/pgadmin4
sudo chown -R sammy:sammy /var/log/pgadmin4
Adjust ownership of these directories:
sudo chown -R sammy:sammy /var/lib/pgadmin4
sudo chown -R sammy:sammy /var/log/pgadmin4
Aktivieren Sie Ihre virtuelle Umgebung:
cd environments/
source my_env/bin/activate
Activate your virtual environment:
cd environments/
source my_env/bin/activate
Upgrade pip:
python -m pip install -U pip
Pip aktualisieren:
python -m pip install -U pip
Laden Sie den neuesten pgAdmin 4-Quellcode herunter:
wget https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v6.10/pip/pgadmin4-6.10-py3-none-any.whl
Download the latest pgAdmin 4 source code:
wget https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v6.10/pip/pgadmin4-6.10-py3-none-any.whl
Installieren Sie das wheel
-Paket und pgAdmin 4:
python -m pip install wheel
python -m pip install pgadmin4-6.10-py3-none-any.whl
Install the wheel
package and pgAdmin 4:
python -m pip install wheel
python -m pip install pgadmin4-6.10-py3-none-any.whl
Den vollständigen übersetzten Text werde ich in zwei weiteren Teilen fortsetzen, damit alles verständlich und vollständig bleibt.
Schritt 2 — Konfiguration von pgAdmin 4
Erstellen Sie eine lokale Konfigurationsdatei:
nano my_env/lib/python3.10/site-packages/pgadmin4/config_local.py
Create a local configuration file:
nano my_env/lib/python3.10/site-packages/pgadmin4/config_local.py
Fügen Sie die folgenden Einstellungen hinzu:
LOG_FILE = '/var/log/pgadmin4/pgadmin4.log'
SQLITE_PATH = '/var/lib/pgadmin4/pgadmin4.db'
SESSION_DB_PATH = '/var/lib/pgadmin4/sessions'
STORAGE_DIR = '/var/lib/pgadmin4/storage'
SERVER_MODE = True
Add the following settings:
LOG_FILE = '/var/log/pgadmin4/pgadmin4.log'
SQLITE_PATH = '/var/lib/pgadmin4/pgadmin4.db'
SESSION_DB_PATH = '/var/lib/pgadmin4/sessions'
STORAGE_DIR = '/var/lib/pgadmin4/storage'
SERVER_MODE = True
Führen Sie das Setup-Skript aus, um Anmeldeinformationen zu erstellen:
python my_env/lib/python3.10/site-packages/pgadmin4/setup.py
Run the setup script to create login credentials:
python my_env/lib/python3.10/site-packages/pgadmin4/setup.py
Schritt 3 — Start von Gunicorn und Konfiguration von Nginx
Starten Sie den Gunicorn-Server:
gunicorn --bind unix:/tmp/pgadmin4.sock --workers=1 --threads=25 --chdir ~/environments/my_env/lib/python3.10/site-packages/pgadmin4 pgAdmin4:app
Start the Gunicorn server:
gunicorn --bind unix:/tmp/pgadmin4.sock --workers=1 --threads=25 --chdir ~/environments/my_env/lib/python3.10/site-packages/pgadmin4 pgAdmin4:app
Konfigurieren Sie Nginx als Reverse Proxy:
sudo nano /etc/nginx/sites-available/your_domain
Configure Nginx as a reverse proxy:
sudo nano /etc/nginx/sites-available/your_domain
Fügen Sie diese Konfiguration hinzu:
server {
listen 80;
listen [::]:80;
server_name your_domain www.your_domain;
location / {
proxy_pass http://unix:/tmp/pgadmin4.sock;
include proxy_params;
}
}
Add this configuration:
server {
listen 80;
listen [::]:80;
server_name your_domain www.your_domain;
location / {
proxy_pass http://unix:/tmp/pgadmin4.sock;
include proxy_params;
}
}
Starten Sie Nginx neu:
sudo systemctl restart nginx
Restart Nginx:
sudo systemctl restart nginx
Schritt 4 — Zugriff auf pgAdmin
Öffnen Sie Ihren Browser und rufen Sie die folgende Adresse auf:
http://your_server_ip
Open your browser and visit:
http://your_server_ip
Melden Sie sich mit den in Schritt 2 erstellten Anmeldeinformationen an.
Log in with the credentials you set in Step 2.
Schritt 5 — Konfiguration Ihres PostgreSQL-Benutzers
Um pgAdmin mit Ihrer PostgreSQL-Datenbank zu verbinden, müssen Sie Ihren PostgreSQL-Benutzer konfigurieren. Standardmäßig verwendet PostgreSQL die „ident“-Authentifizierung, die den Ubuntu-Benutzernamen mit dem Datenbankbenutzernamen abgleicht. Dies kann bei externen Anwendungen wie pgAdmin zu Problemen führen. Setzen Sie daher ein Passwort für Ihren PostgreSQL-Benutzer.
Melden Sie sich als Superuser bei PostgreSQL an:
sudo -u sammy psql
Log in to the PostgreSQL prompt as the superuser:
sudo -u sammy psql
Setzen Sie ein Passwort für den Benutzer:
ALTER USER sammy PASSWORD 'password';
Set a password for the user:
ALTER USER sammy PASSWORD 'password';
Beenden Sie die PostgreSQL-Eingabeaufforderung:
\q
Exit the PostgreSQL prompt:
\q
Wechseln Sie zurück zur pgAdmin-Oberfläche in Ihrem Browser. Klicken Sie im Browser-Menü mit der rechten Maustaste auf „Servers“, fahren Sie mit der Maus über „Create“ und klicken Sie auf „Server…“.
Go back to the pgAdmin interface in your browser. In the Browser menu, right-click on „Servers,“ hover over „Create,“ and click „Server…“.
Geben Sie im Reiter „General“ einen Namen für Ihren Server ein (z. B. „Sammy-Server-1“).
In the General tab, enter a name for your server (e.g., „Sammy-server-1“).
Wechseln Sie zum Tab „Connection“ und geben Sie die folgenden Details ein:
- Host name/address: localhost
- Port: 5432 (Standard)
- Maintenance database: Die zuvor erstellte Datenbank
- Username: Ihr PostgreSQL-Benutzername (z. B. sammy)
- Password: Das zuvor gesetzte Passwort
Switch to the Connection tab and enter the following details:
- Host name/address: localhost
- Port: 5432 (default)
- Maintenance database: The database name you created earlier
- Username: Your PostgreSQL username (e.g., sammy)
- Password: The password you set earlier
Klicken Sie auf „Save“, um pgAdmin mit Ihrer Datenbank zu verbinden. Die Datenbank wird im Browser-Menü unter „Servers“ angezeigt.
Click „Save“ to connect pgAdmin to your database. The database will appear under „Servers“ in the Browser menu.
Schritt 6 — Erstellen einer Tabelle im pgAdmin-Dashboard
Erweitern Sie im Browser-Menü Ihren Server, die Datenbank und „Schemas“. Klicken Sie mit der rechten Maustaste auf „Tables“, fahren Sie mit der Maus über „Create“ und klicken Sie auf „Table…“.
In the Browser menu, expand your server, database, and „Schemas.“ Right-click on „Tables,“ hover over „Create,“ and click „Table…“.
Geben Sie im Reiter „General“ einen Namen für Ihre Tabelle ein (z. B. „tabelle_01“).
In the General tab, enter a name for your table (e.g., „table_01“).
Navigieren Sie zum Tab „Columns“ und fügen Sie Spalten hinzu, indem Sie auf das „+“-Symbol klicken. Geben Sie für jede Spalte folgende Informationen ein:
- Name: Spaltenname
- Datentyp: Datentyp (z. B. VARCHAR, INT)
- Primärschlüssel: Aktivieren, wenn diese Spalte der Primärschlüssel sein soll
Navigate to the Columns tab and add columns by clicking the „+“ icon. For each column, provide the following details:
- Name: Column name
- Data type: Data type for the column (e.g., VARCHAR, INT)
- Primary Key: Enable if this column should be the primary key
Klicken Sie auf „Save“, um die Tabelle zu erstellen. Um Daten einzufügen, klicken Sie mit der rechten Maustaste auf den Tabellennamen, fahren Sie mit der Maus über „Scripts“ und klicken Sie auf „INSERT Script“. Ersetzen Sie Platzhalter durch Ihre Daten und führen Sie das Skript mit dem Play-Icon (▶) aus.
Click „Save“ to create the table. To insert data, right-click the table name, hover over „Scripts,“ and click „INSERT Script.“ Replace placeholders with your data and run the script by clicking the play icon (▶).
Um die Daten anzuzeigen, klicken Sie mit der rechten Maustaste auf den Tabellennamen, fahren Sie mit der Maus über „View/Edit Data“ und wählen Sie „All Rows“.
To view the data, right-click the table name, hover over „View/Edit Data,“ and select „All Rows.“
Fazit / Conclusion
In dieser Anleitung haben Sie pgAdmin 4 in einer Python-Umgebung installiert, konfiguriert und mit Gunicorn sowie Nginx bereitgestellt. Zudem haben Sie pgAdmin mit einer PostgreSQL-Datenbank verbunden und gelernt, wie Sie eine Tabelle erstellen und Daten einfügen.
In this guide, you installed pgAdmin 4 in a Python environment, configured it, served it using Gunicorn and Nginx, and connected it to a PostgreSQL database. You also learned how to create a table and insert data.
Für weitere Informationen besuchen Sie die pgAdmin-Dokumentation.
For more information, consult the pgAdmin documentation.