Січень 27, 2026Посібники
Як встановити PostgreSQL на Linux сервері
Повний посібник з встановлення, налаштування та захисту сервера бази даних PostgreSQL на Ubuntu та CentOS.

PostgreSQL — це потужна система управління реляційними базами даних з відкритим кодом, відома своєю надійністю, багатством функцій та відповідністю стандартам. Цей посібник допоможе вам встановити та налаштувати PostgreSQL на вашому сервері Hiddence Linux.
Встановлення PostgreSQL на Ubuntu/Debian
PostgreSQL доступний у стандартних репозиторіях. Встановіть останню версію:
bash
sudo apt update
sudo apt install postgresql postgresql-contrib -y
# Запустіть та увімкніть PostgreSQL
sudo systemctl start postgresql
sudo systemctl enable postgresql
# Перевірте встановлення
sudo systemctl status postgresql
psql --versionВстановлення PostgreSQL на RHEL / CentOS / AlmaLinux / Rocky Linux
Для дистрибутивів на основі RHEL спочатку потрібно додати репозиторій PostgreSQL:
bash
# Встановіть репозиторій PostgreSQL
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Для CentOS 8/Rocky Linux 8 використовуйте:
# sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Встановіть PostgreSQL
sudo dnf install -y postgresql15-server postgresql15
# Ініціалізуйте базу даних
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
# Запустіть та увімкніть PostgreSQL
sudo systemctl start postgresql-15
sudo systemctl enable postgresql-15
# Перевірте встановлення
sudo systemctl status postgresql-15
psql --versionПеревірка встановлення
bash
# Перевірте статус PostgreSQL
sudo systemctl status postgresql
# Перевірте версію PostgreSQL
psql --version
# Підключіться до PostgreSQL (Ubuntu/Debian)
sudo -u postgres psql
# Підключіться до PostgreSQL (CentOS/RHEL)
sudo -u postgres psql -d postgresЗахист PostgreSQL
Встановіть пароль для користувача postgres:
bash
# Підключіться до PostgreSQL
sudo -u postgres psql
# Встановіть пароль для користувача postgres
ALTER USER postgres PASSWORD 'ваш_надійний_пароль';
# Вийдіть з PostgreSQL
\qСтворення бази даних та користувача
bash
# Підключіться як користувач postgres
sudo -u postgres psql
# Створіть базу даних
CREATE DATABASE myapp_db;
# Створіть користувача
CREATE USER app_user WITH PASSWORD 'надійний_пароль';
# Надайте привілеї
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO app_user;
# Вийдіть
\qУправління користувачами
bash
# Підключіться до PostgreSQL
sudo -u postgres psql
# Показати всіх користувачів
\du
# Створіть нового користувача
CREATE USER newuser WITH PASSWORD 'пароль';
# Надайте привілеї
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO newuser;
# Відкликайте привілеї
REVOKE ALL PRIVILEGES ON DATABASE myapp_db FROM newuser;
# Видаліть користувача
DROP USER newuser;Увімкнення віддалених з'єднань
Щоб дозволити віддалені з'єднання, відредагуйте файли конфігурації PostgreSQL:
bash
# Редагуйте pg_hba.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/pg_hba.conf
# Редагуйте pg_hba.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/pg_hba.conf
# Додайте рядок:
host all all 0.0.0.0/0 md5
# Редагуйте postgresql.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/postgresql.conf
# Редагуйте postgresql.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/postgresql.conf
# Змініть:
listen_addresses = '*'
# Перезапустіть PostgreSQL
sudo systemctl restart postgresqlОсновні команди PostgreSQL
bash
# Підключіться до бази даних
psql -U app_user -d myapp_db
# Показати бази даних
\l
# Підключіться до бази даних
\c database_name
# Показати таблиці
\dt
# Описати таблицю
\d table_name
# Виконати SQL файл
psql -U app_user -d myapp_db -f script.sql
# Створити резервну копію бази даних
pg_dump -U app_user myapp_db > backup.sql
# Відновити базу даних
psql -U app_user -d myapp_db < backup.sqlКорисні поради
- Завжди використовуйте надійні паролі для користувачів бази даних
- Обмежте віддалений доступ до конкретних IP-адрес у pg_hba.conf
- Регулярно створюйте резервні копії ваших баз даних за допомогою pg_dump
- Моніторте логи PostgreSQL: /var/log/postgresql/ (Ubuntu) або /var/lib/pgsql/15/data/log/ (CentOS)
- Використовуйте пул з'єднань (pgBouncer) для додатків з високим трафіком
- Тримайте PostgreSQL оновленим до останньої стабільної версії для виправлень безпеки