Natrag na blog
Siječanj 27, 2026Vodiči

Kako instalirati PostgreSQL na Linux poslužitelju

Potpuni vodič za instalaciju, konfiguraciju i osiguranje PostgreSQL baze podataka na Ubuntu i CentOS.

Kako instalirati PostgreSQL na Linux poslužitelju

PostgreSQL je moćan, open-source relacijski sustav za upravljanje bazama podataka poznat po svojoj pouzdanosti, bogatstvu značajki i usklađenosti sa standardima. Ovaj vodič će vam pomoći instalirati i konfigurirati PostgreSQL na vašem Hiddence Linux poslužitelju.

Instaliranje PostgreSQL na Ubuntu/Debian

PostgreSQL je dostupan u zadanom repozitoriju. Instalirajte najnoviju verziju:

bash
sudo apt update
sudo apt install postgresql postgresql-contrib -y

# Pokrenite i omogućite PostgreSQL
sudo systemctl start postgresql
sudo systemctl enable postgresql

# Provjerite instalaciju
sudo systemctl status postgresql
psql --version

Instaliranje PostgreSQL na RHEL / CentOS / AlmaLinux / Rocky Linux

Za RHEL-bazirane distribucije, prvo trebate dodati PostgreSQL repozitorij:

bash
# Instalirajte PostgreSQL repozitorij
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# Za CentOS 8/Rocky Linux 8, koristite:
# sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# Instalirajte PostgreSQL
sudo dnf install -y postgresql15-server postgresql15

# Inicijalizirajte bazu podataka
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb

# Pokrenite i omogućite PostgreSQL
sudo systemctl start postgresql-15
sudo systemctl enable postgresql-15

# Provjerite instalaciju
sudo systemctl status postgresql-15
psql --version

Provjera instalacije

bash
# Provjerite status PostgreSQL
sudo systemctl status postgresql

# Provjerite verziju PostgreSQL
psql --version

# Povežite se na PostgreSQL (Ubuntu/Debian)
sudo -u postgres psql

# Povežite se na PostgreSQL (CentOS/RHEL)
sudo -u postgres psql -d postgres

Osiguravanje PostgreSQL

Postavite lozinku za korisnika postgres:

bash
# Povežite se na PostgreSQL
sudo -u postgres psql

# Postavite lozinku za korisnika postgres
ALTER USER postgres PASSWORD 'vaša_jaka_lozinka';

# Izađite iz PostgreSQL
\q

Stvaranje baze podataka i korisnika

bash
# Povežite se kao korisnik postgres
sudo -u postgres psql

# Stvorite bazu podataka
CREATE DATABASE myapp_db;

# Stvorite korisnika
CREATE USER app_user WITH PASSWORD 'jaka_lozinka';

# Dodijelite privilegije
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO app_user;

# Izađite
\q

Upravljanje korisnicima

bash
# Povežite se na PostgreSQL
sudo -u postgres psql

# Popis svih korisnika
\du

# Stvorite novog korisnika
CREATE USER newuser WITH PASSWORD 'lozinka';

# Dodijelite privilegije
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO newuser;

# Oduzmite privilegije
REVOKE ALL PRIVILEGES ON DATABASE myapp_db FROM newuser;

# Obrišite korisnika
DROP USER newuser;

Omogućavanje udaljenih veza

Da biste omogućili udaljene veze, uredite PostgreSQL konfiguracijske datoteke:

bash
# Uredite pg_hba.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/pg_hba.conf

# Uredite pg_hba.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/pg_hba.conf

# Dodajte liniju:
host    all             all             0.0.0.0/0               md5

# Uredite postgresql.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/postgresql.conf

# Uredite postgresql.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/postgresql.conf

# Promijenite:
listen_addresses = '*'

# Ponovno pokrenite PostgreSQL
sudo systemctl restart postgresql

Osnovne PostgreSQL naredbe

bash
# Povežite se na bazu podataka
psql -U app_user -d myapp_db

# Popis baza podataka
\l

# Povežite se na bazu podataka
\c database_name

# Popis tablica
\dt

# Opis tablice
\d table_name

# Izvršite SQL datoteku
psql -U app_user -d myapp_db -f script.sql

# Sigurnosna kopija baze podataka
pg_dump -U app_user myapp_db > backup.sql

# Vraćanje baze podataka
psql -U app_user -d myapp_db < backup.sql

Korisni savjeti

  • Uvijek koristite jake lozinke za korisnike baze podataka
  • Ograničite udaljeni pristup na određene IP adrese u pg_hba.conf
  • Redovito pravite sigurnosne kopije baza podataka koristeći pg_dump
  • Nadzirite PostgreSQL zapise: /var/log/postgresql/ (Ubuntu) ili /var/lib/pgsql/15/data/log/ (CentOS)
  • Koristite povezivanje u skupove (pgBouncer) za aplikacije s visokim prometom
  • Držite PostgreSQL ažuriran na najnoviju stabilnu verziju za sigurnosne zakrpe