Postgresql – konfiguracja

Pliki konfiguracyjne

# ls /etc/postgresql/13/main/

conf.d 
environment 
pg_ctl.conf 
pg_hba.conf 
pg_ident.conf 
postgresql.conf 
start.conf

Restart serwera Postgresql

systemctl restart postgresql

Interfejs tekstowy psql –

Zalogowaćsię na user systemowego postgres

# su - postgres 
# psql
# psql -h host -U user -d database  - zdalny dostęp
psql (13.20 (Debian 13.20-0+deb11u1))
Type "help" for help.

postgres=#  \q  exit -wyjście z konsoli
-- utworzenie superużytkownika - może tworzyć bazy danych 

CREATE ROLE nazwa_uzytkownika WITH LOGIN PASSWORD 'twoje_haslo' CREATEDB;

Z poziomu systemu będąc zalogowanym jako użytkownik postgres

# createuser --interactive

W PostgreSQL istnieją następujące główne role/uprawnienia, które można przyznać użytkownikowi:

  1. SUPERUSER – pełne uprawnienia do wszystkiego w systemie baz danych
  2. CREATEDB – możliwość tworzenia nowych baz danych
  3. CREATEROLE – możliwość tworzenia nowych ról (użytkowników)
  4. LOGIN – możliwość logowania się do bazy danych (domyślnie przyznawane przez createuser)
  5. REPLICATION – możliwość korzystania z replikacji
  6. BYPASSRLS – możliwość pomijania zabezpieczeń na poziomie wierszy (Row Level Security)
  7. INHERIT – automatyczne dziedziczenie uprawnień z innych ról (domyślnie włączone)
  8. PASSWORD – hasło do logowania (nie jest pytaniem w createuser, trzeba dodać później)
ALTER ROLE nazwa_uzytkownika WITH REPLICATION;
ALTER ROLE nazwa_uzytkownika WITH PASSWORD 'twoje_haslo';