Перейти до вмісту
КонтактПоштаПанель клієнта

Хостинг і сервер

Як створити базу PostgreSQL у Plesk і підключити її до застосунку?

Коротка відповідь: базу PostgreSQL ви створюєте в Plesk так само, як базу MySQL: Сайти та домени → Бази даних → Додати базу даних, тип PostgreSQL, назва бази та користувач із паролем. Застосунок на тому самому сервері підключається до хоста localhost (або 127.0.0.1) на порту 5432. Найзручніше передати йому це одним рядком postgres://користувач:пароль@127.0.0.1:5432/база у змінній середовища. База потрапляє в резервну копію підписки разом із файлами сайту.

PostgreSQL чи MariaDB/MySQL?

WordPress, WooCommerce і PrestaShop потребують MySQL/MariaDB — для них вибір простий. PostgreSQL найчастіше обирають для власних застосунків:

Таблицю можна прогортати горизонтально.

PostgreSQLMariaDB / MySQL
Типове застосуваннязастосунки на Node.js, Ruby on Rails, Django, Laravel; аналітикаCMS і магазини (WordPress, WooCommerce, PrestaShop)
Типи данихJSONB, масиви, діапазони, географічні типи (PostGIS)JSON, базові типи
Відповідність SQLдуже добра, транзакції також для змін схемидобра, більше власних розширень синтаксису
Підтримка в Pleskстворення баз даних і користувачів, резервні копіїте саме плюс phpMyAdmin

Створення бази даних і користувача в Plesk

  1. Відкрийте Сайти та домени і біля домену виберіть Бази даних.
  2. Натисніть Додати базу даних.
  3. Введіть назву бази (наприклад, app_prod) і як сервер бази оберіть PostgreSQL.
  4. Створіть користувача бази: ім'я, надійний пароль (найкраще згенерований панеллю).
  5. Збережіть. База даних і користувач одразу готові до роботи.

Для тестового середовища створіть окрему базу та окремого користувача (наприклад, app_staging) — не використовуйте продакшн-базу для тестів.

Хост, порт і дані доступу

Таблицю можна прогортати горизонтально.

ПараметрЗначення
Хост127.0.0.1 (або localhost)
Порт5432
Базаназва, вказана під час створення
Користувач / паролькористувач бази з панелі

Адреса підключення (connection string) у стандартному форматі:

postgres://app_user:TWOJE_HASLO@127.0.0.1:5432/app_prod

Якщо пароль містить спеціальні символи (@, :, /), закодуйте їх в адресі (наприклад, @ → %40). Адресу зберігайте в змінній середовища застосунку, наприклад DATABASE_URL, а не в коді.

Перевірити підключення можна з консолі SSH:

PGPASSWORD='TWOJE_HASLO' psql -h 127.0.0.1 -U app_user -d app_prod -c 'select version();'

Підключення із застосунку Node.js

Бібліотека pg на чистому JavaScript не потребує компіляції:

// npm install pg
const { Pool } = require('pg');

const pool = new Pool({
  connectionString: process.env.DATABASE_URL,
  max: 5,                       // na hostingu wystarczy kilka połączeń
});

async function main() {
  const { rows } = await pool.query('select now() as teraz');
  console.log(rows[0].teraz);
}

main().finally(() => pool.end());

Як запустити сам застосунок у панелі, ми описуємо в статті Node.js у Plesk.

Підключення із застосунку Ruby

У Ruby стандартом є гем pg (потребує компіляції під час встановлення):

# Gemfile: gem "pg"
require "pg"

conn = PG.connect(ENV.fetch("DATABASE_URL"))
puts conn.exec("select now() as teraz").first["teraz"]
conn.close

У Ruby on Rails достатньо DATABASE_URL у змінних середовища та адаптера postgresql у config/database.yml. Нативні геми та їхні обмеження на хостингу ми описуємо в статті Ruby у Plesk.

Резервна копія і відновлення

  • Копія підписки в Менеджері резервних копій Plesk охоплює бази PostgreSQL разом із файлами сайту. Відновлення повертає стан бази на момент створення копії — ми перевірили це на тестовому акаунті.
  • Власний дамп перед більшою зміною (міграція схеми, імпорт даних) зробіть із консолі:
PGPASSWORD='TWOJE_HASLO' pg_dump -h 127.0.0.1 -U app_user -Fc app_prod > app_prod-$(date +%F).dump
# odtworzenie do tej samej lub pustej bazy:
PGPASSWORD='TWOJE_HASLO' pg_restore -h 127.0.0.1 -U app_user -d app_prod --clean --if-exists app_prod-2026-09-17.dump

Дампи тримайте поза публічним каталогом сайту і видаляйте старі — це повна копія даних.

Безпека і доступ ззовні

  • Ізоляція: користувач бази має доступ лише до своїх баз; спроба підключення до чужої бази завершується помилкою прав доступу.
  • Доступ з інтернету: сервер PostgreSQL приймає підключення лише локально. Зі свого комп'ютера підключайтеся через SSH-тунель, якщо пакет має доступ SSH:
ssh -L 15432:127.0.0.1:5432 uzytkownik@twojafirma.pl
# potem lokalnie: psql -h 127.0.0.1 -p 15432 -U app_user -d app_prod
  • Паролі: окремий користувач для кожного застосунку, паролі згенеровані та збережені у змінних середовища.
  • Права доступу: застосунку не потрібні права суперкористувача — достатньо прав на власну базу.

Найпоширеніші проблеми

  • «password authentication failed» — неправильний пароль або користувач створений для іншої бази.
  • «permission denied for database» — користувач не прив'язаний до цієї бази; додайте його до бази в панелі.
  • «connection refused» — ви підключаєтеся ззовні або на неправильний порт; із застосунку на сервері використовуйте 127.0.0.1:5432.
  • Спеціальні символи в паролі ламають адресу — закодуйте їх у connection string або вкажіть параметри окремо.
  • «too many connections» — зменшіть пул підключень у застосунку (наприклад, max: 5).

FAQ

Чи можу я мати бази MySQL і PostgreSQL в одній підписці?

Так. Тип ви обираєте окремо для кожної бази; ліміт баз у пакеті охоплює обидва типи.

Чи можу я підключитися до бази зі свого комп'ютера?

Не напряму — сервер приймає лише локальні підключення. Використайте SSH-тунель або працюйте з копією бази у себе.

Чи база PostgreSQL входить у резервну копію?

Так, копія підписки в Plesk містить дамп бази PostgreSQL і дозволяє її відновити.

Яку версію PostgreSQL обрати?

На спільному хостингу версію сервера визначає адміністратор. Перевірте її запитом select version(); і підберіть під неї бібліотеки застосунку.

Технічна перевірка: 17.09.2026, Plesk Obsidian 18.0.80, PostgreSQL 13.23, копія та відновлення підписки Plesk. Пов'язані статті: застосунок Node.js у Plesk, застосунок Ruby у Plesk, Docker і Docker Compose у Plesk. Пакети: хостинг NVMe (Business) і NVMe Performance і Pro.