Зміна конфігурації бази даних PostgreSQL у ServBay
ServBay надає потужне локальне середовище для веб-розробки під macOS, з інтегрованою базою даних PostgreSQL. У цій статті детально розглядається, як змінювати налаштування PostgreSQL у ServBay: від найбільш рекомендованого — через зручний інтерфейс (UI) — до ручного редагування конфігураційних файлів для тимчасового використання чи досвідчених користувачів.
Залежно від встановленої версії PostgreSQL у ServBay, основні конфігураційні файли зазвичай знаходяться у каталозі /Applications/ServBay/etc/postgresql/<version>
, наприклад, для PostgreSQL 16 це буде /Applications/ServBay/etc/postgresql/16
.
Важлива інформація
ServBay керує більшістю налаштувань через графічний інтерфейс користувача (UI) і автоматично генерує відповідні конфігураційні файли. Наполегливо рекомендується змінювати конфігурацію через UI ServBay. Пряме редагування файлів конфігурації може стати причиною їх перезапису під час наступного керування чи оновлення в ServBay. Ручне редагування можливе для тимчасового тестування або досвідчених користувачів, але не рекомендується для постійних або продакшн-налаштувань.
Зміна налаштувань через UI ServBay (рекомендовано)
ServBay пропонує інтуїтивно зрозумілий графічний інтерфейс — найзручніший та рекомендований спосіб зміни конфігурацій PostgreSQL. Зміни, внесені через UI, застосовуються автоматично і здебільшого вступають у силу негайно, без необхідності ручного перезапуску (крім випадків, якщо ServBay показує відповідне сповіщення).
Покрокова інструкція
- Відкрийте додаток ServBay.
- У лівій панелі навігації виберіть
Бази даних
. - Серед переліку баз даних знайдіть
PostgreSQL
та натисніть на потрібну версію для налаштування. - На екрані налаштувань відкриється детальна інформація про поточну версію PostgreSQL та опції конфігурації.
Доступні налаштування
У цьому розділі ви побачите стандартне ім’я користувача та пароль PostgreSQL (зазвичай вони відображаються на цій сторінці). Також можна змінити ряд поширених параметрів:
- Адреса прослуховування (
listen_addresses
): визначає, на яких мережевих інтерфейсах PostgreSQL приймає підключення. За замовчуванням це*
, тобто на всіх доступних інтерфейсах. - Порт (
port
): мережевий порт, на якому працює служба PostgreSQL. Типовий порт —5432
(зверніть увагу, він відрізняється від порту MySQL/MariaDB — 3306). - Максимальна кількість з’єднань (
max_connections
): обмежує кількість одночасних клієнтських підключень до бази даних. - Оперативна пам’ять для роботи (
work_mem
): обсяг пам’яті, яку використовує процес запиту для операцій сортування та хешування.
Крім того, у секції Additional Parameters
можна додати або змінити інші параметри з postgresql.conf
, які не відображаються безпосередньо у UI. Заповнюйте їх по одному на рядок у форматі параметр = значення
.
Застосування змін
Після внесення змін натисніть кнопку Зберегти
внизу сторінки. ServBay автоматично застосує ваші нові налаштування. Для більшості змін не потрібен перезапуск, хіба що ServBay про це попередить у інтерфейсі.
Зміна налаштувань шляхом ручного редагування конфігураційних файлів (не рекомендується для постійних змін)
Ручне редагування конфіг-файлів, як уже згадувалося, не варто використовувати для постійного адміністрування, оскільки налаштування через UI ServBay можуть їх перезаписати. Проте знання розташування і вмісту файлів допоможе зрозуміти логіку низькорівневої конфігурації PostgreSQL.
WARNING
Ручне редагування конфігурацій доцільне лише для тимчасового дебагу чи експертних випадків. ServBay настійно радить користуватися UI для внесення змін, щоб уникнути втрати налаштувань чи конфліктів. Звертайте увагу, що шлях і зміст файлів може змінюватися внаслідок роботи внутрішніх механізмів ServBay.
Розташування конфігураційних файлів
Основні конфігурації PostgreSQL у ServBay містяться у файлах postgresql.conf
та pg_hba.conf
. Їхня точна локація залежить від обраної версії PostgreSQL, зазвичай:
postgresql.conf
:/Applications/ServBay/etc/postgresql/<version>/postgresql.conf
pg_hba.conf
:/Applications/ServBay/etc/postgresql/<version>/pg_hba.conf
Зверніть увагу: шлях /db/postgresql/16/pg_hba.conf
, згаданий у старіших документах, може стосуватися внутрішніх механізмів або історичних версій. Сучасна конфігурація, яку обробляє UI, зберігається у /Applications/ServBay/etc/postgresql/<version>
. Тому рекомендуємо перевірити діючий шлях перед змінами, для сумісності з інтерфейсом ServBay.
Приклади типових конфігурацій
Нижче подано приклади основних налаштувань у postgresql.conf
та pg_hba.conf
. Використовуйте текстовий редактор (наприклад, VS Code, Sublime Text, Nano) із правами адміністратора для редагування цих файлів.
postgresql.conf
postgresql.conf
— головний файл конфігурації сервера PostgreSQL, у якому задаються ключові параметри роботи.
yaml
# Адреса прослуховування: на яких мережевих інтерфейсах реагує сервер. '*' означає всі інтерфейси.
listen_addresses = '*'
# Порт: мережевий порт, який використовує сервер. За замовчуванням — 5432.
port = 5432
# Максимальна кількість з’єднань: число клієнтів, які можуть підключитися одночасно.
max_connections = 100
# Розмір спільного буфера: пам’ять, що використовується PostgreSQL для кешу даних.
shared_buffers = 128MB
# Каталог логів: місце зберігання лог-файлів.
log_directory = 'log'
# Формат імені лог-файлів: як називаються створені файли журналу.
log_filename = 'postgresql-%Y-%m-%d.log'
# Включити лог повільних запитів: записувати запити, що виконуються довше за визначену тривалість.
# Задати додатне число, наприклад 2000 — логувати запити довші за 2 сек.
# Вказати -1, щоб вимкнути лог повільних запитів.
log_min_duration_statement = 2000
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
pg_hba.conf
pg_hba.conf
(Host-Based Authentication) визначає способи аутентифікації клієнтських підключень і їх права.
sql
# TYPE DATABASE USER ADDRESS METHOD
# Дозволяє локальні з’єднання через Unix сокети з методом trust (без паролю).
# "local" is for Unix domain socket connections only
local all all trust
# Дозволяє всім IPv4-адресам підключатися через TCP/IP із паролем md5.
# IPv4 local connections:
host all all 0.0.0.0/0 md5
# Дозволяє підключення з конкретної підмережі (наприклад, 192.168.1.0/24) через TCP/IP із паролем md5.
# IPv4 local connections from a specific subnet:
# host all all 192.168.1.0/24 md5
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
При зміні pg_hba.conf
важливо розуміти значення кожної колонки (TYPE
, DATABASE
, USER
, ADDRESS
, METHOD
). Помилки у налаштуваннях можуть призвести до неможливості встановити з’єднання або загрози безпеці.
Застосування ручних змін
Після редагування конфігураційних файлів потрібно перезапустити службу PostgreSQL для активації нових налаштувань.
Перезапуск через інтерфейс керування ServBay
- Відкрийте головний інтерфейс керування ServBay.
- У лівій панелі виберіть
Бази даних
. - Знайдіть
PostgreSQL
та оберіть потрібну версію. - На відповідній сторінці або у переліку “Пакети”/“Сервіси” знайдіть необхідну версію PostgreSQL та натисніть
Перезапустити
.
Перезапуск за допомогою CLI-інструменту servbayctl
Керувати сервісами, включно з перезапуском PostgreSQL, зручно через консольний інструмент ServBay:
bash
servbayctl restart postgresql <version>
1
Замініть <version>
на вашу фактичну версію PostgreSQL, наприклад, 16
.
Висновки
ServBay надає зручний і безпечний спосіб зміни налаштувань PostgreSQL через UI — саме цей метод максимально захищає від можливих проблем із перезаписом файлів. Ви з легкістю можете редагувати основні опції (адресу прослуховування, порт, кількість з’єднань) і перевірити стандартні облікові дані. Для особливих ситуацій доступне ручне редагування ключових файлів (postgresql.conf
, pg_hba.conf
), які розташовані у /Applications/ServBay/etc/postgresql/<version>
. У разі будь-яких змін, для їх застосування перезапустіть PostgreSQL через UI або утиліту servbayctl
.
Правильне розуміння способів конфігурування допоможе ефективніше адаптувати базу даних PostgreSQL у ServBay під свої задачі розробки.