Настройки для підключення інших ПК до бази даних PostgreSQL (версія для Windows)
Робоче середовище
- PostgreSQL
-
- PostgreSQL 15
- Windows (сервер)
-
- Windows Server 2019
- Windows (клієнт)
-
- Вікна 11
Передумови
- Вікна
-
- Windows Server 2019
- Windows Server 2016
- Інші версії можуть працювати, але офіційно не підтримуються.
Брандмауер
У Windows брандмауери запобігають підключенню, відмінному від стандартних портів. Він повинен бути налаштований так, щоб мати можливість підключатися по порту для підключення до PostgreSQL.
Увійшовши в серверне середовище Windows, введіть «брандмауер» у меню «Пуск» і виберіть Відкрийте брандмауер Windows Defender із додатковою безпекою.
Коли екран відкриється, виберіть «Вхідні правила» в меню зліва та натисніть «Нове правило...» у меню праворуч.
У полі «Тип правила» виберіть «Порт».
У полі «Протокол і порт» виберіть TCP як протокол. Для порту введіть значення за замовчуванням 5432. Якщо ви вказали інший номер порту у вашій інсталяції PostgreSQL, введіть цей номер порту.
Для "Дії" виберіть "Дозволити підключення".
У "Профілі" поставте галочки "Домен" і "Приватний". Я думаю, що малоймовірно, що ви дозволите доступ до бази даних у «загальнодоступному» середовищі, яке дозволить невизначеним людям отримати доступ до неї.
Введіть необов'язкову назву та опис. Будь ласка, введіть його, щоб було легко зрозуміти мету відкриття порту.
Після додавання він з'явиться у списку.
postgresql.conf
Перевірте налаштування на postgresql.conf. Я не думаю, що потрібно його міняти в 15 версії.
У наступному місці є файл, тому відкрийте його за допомогою програми для блокнота. Будь ласка, перевірте шлях, оскільки він залежить від версії.
C:\Program Files\PostgreSQL\15\data\postgresql.conf
listen_addresses
Шукайте параметр під викликом. Змінювати його не потрібно, якщо він встановлений наступним чином:
listen_addresses = '*'
pg_hba.conf
За замовчуванням доступ до бази даних можна отримати тільки з локального середовища.
У наступному місці є файл, тому відкрийте його за допомогою програми для блокнота. Будь ласка, перевірте шлях, оскільки він залежить від версії.
C:\Program Files\PostgreSQL\15\data\pg_hba.conf
Існує ймовірність, що ви можете допустити помилку при її виправленні, тому про всяк випадок скопіюйте та створіть резервну копію файлу перед його зміною.
Якщо ви прокрутите сторінку до кінця, то знайдете такі рядки: Це вказує на те, що доступ до IPv4 можливий лише локально.
# TYPE DATABASE USER ADDRESS METHOD
:
host all all 127.0.0.1/32 scram-sha-256
:
Встановіть для цієї АДРЕСИ одиночний або діапазон, щоб до неї можна було отримати доступ з інших ПК.
Встановлене значення залежить від мережі, яку ви створюєте.
Якщо ви не впевнені, будь ласка 0.0.0.0/0
, дозвольте всім з або samenet
типу, щоб дозволити весь діапазон тієї ж мережі, що і сервер.
Приклади конфігурацій
# TYPE DATABASE USER ADDRESS METHOD
:
host all all 192.168.0.0/24 scram-sha-256
:
Перезапустіть службу
pg_hba.conf
Ці файли конфігурації читаються лише під час запуску PostgreSQL, тому вам потрібно перезапустити службу.
До речі, він завантажується при запуску PostgreSQL, тому якщо ви перезавантажите Windows, то він буде завантажуватися саме в цей час.
Відкривши меню «Пуск», введіть «служби», щоб запустити його.
Знайдіть і виберіть "postgresql-x64-15 - PostgreSQL Server 15" з середнього списку. Зверніть увагу, що назва буде змінюватися в залежності від версії. Після вибору натисніть «Перезапустити службу» зліва.
Перевірка підключення від інших ПК
Давайте подивимося, чи зможемо ми підключитися до бази даних з іншого ПК. Інформація про місце з'єднання залежить від середовища, тому тут описано лише процедуру. Цього разу я використовую pgAdmin для підключення, але я думаю, що ви також можете підключитися до інших інструментів доступу до бази даних.
Після запуску pgAdmin на клієнтському ПК окремо від сервера баз даних, клацніть правою кнопкою миші на Сервери та виберіть "Зареєструвати > Сервер...".
На вкладці «Загальні» ім'я має бути іменем, яке допоможе вам ідентифікувати сервер.
Виберіть вкладку Підключення. Введіть "Ім'я/адреса хоста", "Обслуговування даних", "Ім'я користувача" та "Пароль". Якщо ви не хочете вводити пароль щоразу, увімкніть опцію "Зберегти пароль". До речі, pdAdmin може не змогти визначити ім'я Host, тому в такому випадку вкажіть IP-адресу безпосередньо.
За потреби заповніть інші поля введення. Коли ви закінчите, натисніть кнопку «Зберегти».
Якщо ви можете підключитися до бази даних цільового сервера, перевірка завершена.