Leden 27, 2026Návody
Jak nainstalovat PostgreSQL na Linux serveru
Kompletní průvodce instalací, konfigurací a zabezpečením PostgreSQL databázového serveru na Ubuntu a CentOS.

PostgreSQL je výkonný systém pro správu relačních databází s otevřeným zdrojovým kódem, známý pro svou spolehlivost, bohatost funkcí a dodržování standardů. Tento průvodce vám pomůže nainstalovat a nakonfigurovat PostgreSQL na vašem Hiddence Linux serveru.
Instalace PostgreSQL na Ubuntu/Debian
PostgreSQL je dostupný ve výchozích repozitářích. Nainstalujte nejnovější verzi:
bash
sudo apt update
sudo apt install postgresql postgresql-contrib -y
# Spustit a povolit PostgreSQL
sudo systemctl start postgresql
sudo systemctl enable postgresql
# Ověřit instalaci
sudo systemctl status postgresql
psql --versionInstalace PostgreSQL na RHEL / CentOS / AlmaLinux / Rocky Linux
Pro distribuce založené na RHEL musíte nejprve přidat PostgreSQL repozitář:
bash
# Nainstalovat PostgreSQL repozitář
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Pro CentOS 8/Rocky Linux 8 použijte:
# sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Nainstalovat PostgreSQL
sudo dnf install -y postgresql15-server postgresql15
# Inicializovat databázi
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
# Spustit a povolit PostgreSQL
sudo systemctl start postgresql-15
sudo systemctl enable postgresql-15
# Ověřit instalaci
sudo systemctl status postgresql-15
psql --versionOvěření instalace
bash
# Zkontrolovat stav PostgreSQL
sudo systemctl status postgresql
# Zkontrolovat verzi PostgreSQL
psql --version
# Připojit se k PostgreSQL (Ubuntu/Debian)
sudo -u postgres psql
# Připojit se k PostgreSQL (CentOS/RHEL)
sudo -u postgres psql -d postgresZabezpečení PostgreSQL
Nastavte heslo pro uživatele postgres:
bash
# Připojit se k PostgreSQL
sudo -u postgres psql
# Nastavit heslo pro uživatele postgres
ALTER USER postgres PASSWORD 'vaše_silné_heslo';
# Opustit PostgreSQL
\qVytvoření databáze a uživatele
bash
# Připojit se jako uživatel postgres
sudo -u postgres psql
# Vytvořit databázi
CREATE DATABASE myapp_db;
# Vytvořit uživatele
CREATE USER app_user WITH PASSWORD 'silné_heslo';
# Udělit oprávnění
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO app_user;
# Opustit
\qSpráva uživatelů
bash
# Připojit se k PostgreSQL
sudo -u postgres psql
# Zobrazit všechny uživatele
\du
# Vytvořit nového uživatele
CREATE USER newuser WITH PASSWORD 'heslo';
# Udělit oprávnění
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO newuser;
# Odebrat oprávnění
REVOKE ALL PRIVILEGES ON DATABASE myapp_db FROM newuser;
# Smazat uživatele
DROP USER newuser;Povolení vzdálených připojení
Pro povolení vzdálených připojení upravte konfigurační soubory PostgreSQL:
bash
# Upravit pg_hba.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/pg_hba.conf
# Upravit pg_hba.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/pg_hba.conf
# Přidat řádek:
host all all 0.0.0.0/0 md5
# Upravit postgresql.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/postgresql.conf
# Upravit postgresql.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/postgresql.conf
# Změnit:
listen_addresses = '*'
# Restartovat PostgreSQL
sudo systemctl restart postgresqlZákladní PostgreSQL příkazy
bash
# Připojit se k databázi
psql -U app_user -d myapp_db
# Zobrazit databáze
\l
# Připojit se k databázi
\c database_name
# Zobrazit tabulky
\dt
# Popsat tabulku
\d table_name
# Spustit SQL soubor
psql -U app_user -d myapp_db -f script.sql
# Zálohovat databázi
pg_dump -U app_user myapp_db > backup.sql
# Obnovit databázi
psql -U app_user -d myapp_db < backup.sqlUžitečné tipy
- Vždy používejte silná hesla pro uživatele databáze
- Omezte vzdálený přístup na konkrétní IP adresy v pg_hba.conf
- Pravidelně zálohujte své databáze pomocí pg_dump
- Sledujte protokoly PostgreSQL: /var/log/postgresql/ (Ubuntu) nebo /var/lib/pgsql/15/data/log/ (CentOS)
- Používejte sdružování připojení (pgBouncer) pro aplikace s vysokým provozem
- Udržujte PostgreSQL aktualizovaný na nejnovější stabilní verzi kvůli bezpečnostním záplatám