PostgreSQL (Postgres) — мощная СУБД для сложных приложений: поддерживает JSON, полнотекстовый поиск, оконные функции и многое другое. Предпочтение разработчиков Laravel, Django, Ruby on Rails.
Установка PostgreSQL 16
sudo apt update
sudo apt install -y postgresql postgresql-contrib
sudo systemctl enable postgresql
sudo systemctl start postgresql
# Проверить версию
psql --version
Создание базы данных и пользователя
# Войти под postgres
sudo -u postgres psql
-- Создать пользователя
CREATE USER myuser WITH PASSWORD 'НадёжныйПароль';
-- Создать базу
CREATE DATABASE myapp OWNER myuser;
-- Выдать права
GRANT ALL PRIVILEGES ON DATABASE myapp TO myuser;
\q
Настройка удалённого доступа
# Разрешить подключения
sudo nano /etc/postgresql/16/main/postgresql.conf
# listen_addresses = '*'
# Настроить аутентификацию
sudo nano /etc/postgresql/16/main/pg_hba.conf
# Добавить в конец:
# host all all 0.0.0.0/0 md5
sudo systemctl restart postgresql
sudo ufw allow 5432/tcp
⚠️ Открывайте порт 5432 только для конкретных IP:
ufw allow from 203.0.113.10 to any port 5432Базовая оптимизация postgresql.conf
shared_buffers = 256MB # 25% RAM
effective_cache_size = 768MB # 75% RAM
work_mem = 16MB
maintenance_work_mem = 64MB
max_connections = 100
💡 Используйте PGTune для автоматического расчёта оптимальных параметров под ваш сервер.