PostgreSQL Installation & Grundlagen | Enjyn Gruppe
Hallo Welt
Hallo Welt
Original Lingva Deutsch
Übersetzung wird vorbereitet...
Dieser Vorgang kann bis zu 60 Sekunden dauern.
Diese Seite wird erstmalig übersetzt und dann für alle Besucher gespeichert.
0%
DE Zurück zu Deutsch
Übersetzung durch Lingva Translate

241 Dokumentationen verfügbar

Wissensdatenbank

PostgreSQL Installation Grundlagen

Zuletzt aktualisiert: 11.01.2026 um 11:52 Uhr

PostgreSQL Installation & Grundlagen

PostgreSQL ist eine leistungsstarke, objektrelationale Open-Source-Datenbank. Sie wird oft für komplexe Anwendungen, GIS-Daten und als MySQL-Alternative eingesetzt.

Installation

# Ubuntu/Debian
sudo apt update
sudo apt install postgresql postgresql-contrib -y

# Status prüfen
sudo systemctl status postgresql

# Version prüfen
psql --version

Erster Zugriff

# Als postgres-Benutzer anmelden
sudo -u postgres psql

# In der PostgreSQL-Shell:
postgres=# \conninfo
postgres=# \q

Benutzer und Datenbank erstellen

sudo -u postgres psql
-- Benutzer erstellen
CREATE USER meinuser WITH PASSWORD 'sicheres_passwort';

-- Datenbank erstellen
CREATE DATABASE meine_db OWNER meinuser;

-- Alle Rechte vergeben
GRANT ALL PRIVILEGES ON DATABASE meine_db TO meinuser;

-- Benutzer auflisten
\du

-- Datenbanken auflisten
\l

\q

Oder via Kommandozeile

sudo -u postgres createuser --interactive meinuser
sudo -u postgres createdb -O meinuser meine_db

Verbindung testen

# Als Benutzer verbinden
psql -U meinuser -d meine_db -h localhost

# Oder
PGPASSWORD=sicheres_passwort psql -U meinuser -d meine_db -h localhost

Wichtige psql-Befehle

Befehl Beschreibung
\l Datenbanken auflisten
\c dbname Zu Datenbank wechseln
\dt Tabellen anzeigen
\d tablename Tabellenschema anzeigen
\du Benutzer anzeigen
\q Beenden
\? Hilfe

Remote-Zugriff erlauben

sudo nano /etc/postgresql/16/main/postgresql.conf
# Ändern:
listen_addresses = '*'
sudo nano /etc/postgresql/16/main/pg_hba.conf
# Am Ende hinzufügen (für bestimmtes Subnetz):
host    all    all    192.168.1.0/24    scram-sha-256

# Oder für alle (Vorsicht!):
host    all    all    0.0.0.0/0    scram-sha-256
sudo systemctl restart postgresql
sudo ufw allow 5432/tcp

Backup und Restore

# Einzelne Datenbank sichern
pg_dump -U meinuser -d meine_db > backup.sql

# Mit Komprimierung
pg_dump -U meinuser -d meine_db | gzip > backup.sql.gz

# Alle Datenbanken
pg_dumpall -U postgres > all_databases.sql

# Wiederherstellen
psql -U meinuser -d meine_db < backup.sql

# Komprimiert
gunzip -c backup.sql.gz | psql -U meinuser -d meine_db

Performance-Tuning

sudo nano /etc/postgresql/16/main/postgresql.conf
# Für Server mit 4GB RAM:
shared_buffers = 1GB
effective_cache_size = 3GB
maintenance_work_mem = 256MB
work_mem = 64MB
max_connections = 100

PHP mit PostgreSQL

sudo apt install php-pgsql -y
sudo systemctl restart php8.3-fpm
<?php
$conn = pg_connect("host=localhost dbname=meine_db user=meinuser password=sicheres_passwort");

if (!$conn) {
    die("Verbindung fehlgeschlagen");
}

$result = pg_query($conn, "SELECT * FROM users");
while ($row = pg_fetch_assoc($result)) {
    print_r($row);
}

pg_close($conn);
?>

PostgreSQL vs. MySQL

Aspekt PostgreSQL MySQL
SQL-Standard Strenger Flexibler
Komplexe Queries Besser Gut
JSON-Support Sehr gut Gut
Verbreitung Wachsend Höher

Weitere Hilfe

Enjix Beta

Enjyn AI Agent

Hallo 👋 Ich bin Enjix — wie kann ich dir helfen?
120