Styczeń 27, 2026Poradniki
Jak zainstalować PostgreSQL na serwerze Linux
Kompletny przewodnik dotyczący instalacji, konfiguracji i zabezpieczenia serwera bazy danych PostgreSQL na Ubuntu i CentOS.

PostgreSQL to potężny, open-source relacyjny system zarządzania bazami danych znany z niezawodności, bogactwa funkcji i zgodności ze standardami. Ten przewodnik pomoże Ci zainstalować i skonfigurować PostgreSQL na serwerze Linux Hiddence.
Instalacja PostgreSQL na Ubuntu/Debian
PostgreSQL jest dostępny w domyślnych repozytoriach. Zainstaluj najnowszą wersję:
bash
sudo apt update
sudo apt install postgresql postgresql-contrib -y
# Uruchom i włącz PostgreSQL
sudo systemctl start postgresql
sudo systemctl enable postgresql
# Zweryfikuj instalację
sudo systemctl status postgresql
psql --versionInstalacja PostgreSQL na RHEL / CentOS / AlmaLinux / Rocky Linux
Dla dystrybucji opartych na RHEL najpierw musisz dodać repozytorium PostgreSQL:
bash
# Zainstaluj repozytorium PostgreSQL
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Dla CentOS 8/Rocky Linux 8 użyj:
# sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Zainstaluj PostgreSQL
sudo dnf install -y postgresql15-server postgresql15
# Zainicjalizuj bazę danych
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
# Uruchom i włącz PostgreSQL
sudo systemctl start postgresql-15
sudo systemctl enable postgresql-15
# Zweryfikuj instalację
sudo systemctl status postgresql-15
psql --versionWeryfikacja instalacji
bash
# Sprawdź status PostgreSQL
sudo systemctl status postgresql
# Sprawdź wersję PostgreSQL
psql --version
# Połącz się z PostgreSQL (Ubuntu/Debian)
sudo -u postgres psql
# Połącz się z PostgreSQL (CentOS/RHEL)
sudo -u postgres psql -d postgresZabezpieczanie PostgreSQL
Ustaw hasło dla użytkownika postgres:
bash
# Połącz się z PostgreSQL
sudo -u postgres psql
# Ustaw hasło dla użytkownika postgres
ALTER USER postgres PASSWORD 'twoje_silne_haslo';
# Wyjdź z PostgreSQL
\qTworzenie bazy danych i użytkownika
bash
# Połącz się jako użytkownik postgres
sudo -u postgres psql
# Utwórz bazę danych
CREATE DATABASE myapp_db;
# Utwórz użytkownika
CREATE USER app_user WITH PASSWORD 'silne_haslo';
# Nadaj uprawnienia
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO app_user;
# Wyjdź
\qZarządzanie użytkownikami
bash
# Połącz się z PostgreSQL
sudo -u postgres psql
# Wyświetl wszystkich użytkowników
\du
# Utwórz nowego użytkownika
CREATE USER newuser WITH PASSWORD 'haslo';
# Nadaj uprawnienia
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO newuser;
# Cofnij uprawnienia
REVOKE ALL PRIVILEGES ON DATABASE myapp_db FROM newuser;
# Usuń użytkownika
DROP USER newuser;Włączanie połączeń zdalnych
Aby zezwolić na połączenia zdalne, edytuj pliki konfiguracyjne PostgreSQL:
bash
# Edytuj pg_hba.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/pg_hba.conf
# Edytuj pg_hba.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/pg_hba.conf
# Dodaj linię:
host all all 0.0.0.0/0 md5
# Edytuj postgresql.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/postgresql.conf
# Edytuj postgresql.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/postgresql.conf
# Zmień:
listen_addresses = '*'
# Uruchom ponownie PostgreSQL
sudo systemctl restart postgresqlPodstawowe polecenia PostgreSQL
bash
# Połącz się z bazą danych
psql -U app_user -d myapp_db
# Wyświetl bazy danych
\l
# Połącz się z bazą danych
\c database_name
# Wyświetl tabele
\dt
# Opisz tabelę
\d table_name
# Wykonaj plik SQL
psql -U app_user -d myapp_db -f script.sql
# Utwórz kopię zapasową bazy danych
pg_dump -U app_user myapp_db > backup.sql
# Przywróć bazę danych
psql -U app_user -d myapp_db < backup.sqlPrzydatne wskazówki
- Zawsze używaj silnych haseł dla użytkowników bazy danych
- Ogranicz dostęp zdalny do konkretnych adresów IP w pg_hba.conf
- Regularnie tworz kopie zapasowe baz danych używając pg_dump
- Monitoruj logi PostgreSQL: /var/log/postgresql/ (Ubuntu) lub /var/lib/pgsql/15/data/log/ (CentOS)
- Używaj puli połączeń (pgBouncer) dla aplikacji o dużym ruchu
- Utrzymuj PostgreSQL zaktualizowany do najnowszej stabilnej wersji dla poprawek bezpieczeństwa