Назад да блога
Студзень 27, 2026Кіраўніцтва

Як усталяваць PostgreSQL на Linux серверы

Поўны даведнік па ўстаноўцы, наладзе і абароне сервера базы даных PostgreSQL на Ubuntu і CentOS.

Як усталяваць PostgreSQL на Linux серверы

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 абноўленым да апошняй стабільнай версіі для бяспечных патчаў