Меню Закрыть

Postgresql подключение по сети

  1. Создать пользователя ama_user , если он ещё не был создан, из под которого вы будете предоставлять доступ другим пользователям к вашей базе данных.
  2. Далее необходимо настроить права на работу с объектами базы для пользователя ama_user. Для этого нужно выбрать в списке баз данных базу данных, для которой мы открываем удалённый доступ, к примеру ama , и открыть пункт tools в верхнем меню pgAdmin и выбрать инструмент Grant Wizard .
  3. В окне инструмента Grant Wizard на первом шаге необходимо выбрать объекты на которые будут выданы права. В данном случае нам нужно раздать права только на объекты Table и View , поэтому в поле поиска (в верхнем правом углу) вводим Table|View , чтобы отфильтровать список только по этим объетам. Затем отмечаем все объекты галочками и нажимаем Next .
  4. На втором шаге потребуется выбрать перечень операций над объектами, которые будут доступны пользователю. Для этого кликаем на + , чтобы добавить "привелегию" и задаём пользователя, из списка пользователей и ролей в колонке Grantee . В колонке Privileges выбираем перечень операций. Минимальный перечень для работы с базой ПАУ, указан на рисунке ниже.

На третьем шаге просто нажимаем кнопку Finish .

Открыть папку с установленной БД PostgreSQL

По умолчанию БД устанавливается:

  • x86: C:Program Files (x86)PostgreSQL10data
  • x64: C:Program FilesPostgreSQL10data

В текстовом редакторе открыть файл pg_hba.conf

host all all 127.0.0.1/32 md5

host ama ama-user all md5

Небольшая расшифровка этой строки:

Вид подключения Наименование базы данных Имя пользователя IP адрес удалённого рабочего места Метод аутентификации
host ama ama-user all md5

host — используется подключение по TCP/IP

ama – Удалённый пользователь сможет подключаться к базе данных ama , название базы можно заменить на своё, например mydb . Помимо этого можно написать слово all , тогда для пользователя будет открыт доступ ко всем базам данных сервера

Читайте также:  Действительно мы не дорожим

ama-user – пользователь с псевдонимом ama-user сможет подключаться к базе данных ama , если указать слово all , то база данных будет доступна любому пользователю

all — Используется в качестве адреса удалённого рабочего места, в данном случае доступ открывается для любой удалённой машины, для пользователя с псевдонимом указанном в предыдущем столбце. Если требуется указать конкретный адрес, то его можно написать вот в такой форме: 192.168.0.2/32 , а для нескольких пользователей придётся указывать несколько строк подключения, указывать каждого в новой строке, пример будет приведён ниже

md5 – пароль пользователя хешируется алгоритмом MD5, если соответствует, то можно зайти

Пример предоставления доступа нескольким рабочим местам через пользователя ama-user к базе данных ama :

host ama ama-user 192.168.0.2/32 md5
host ama ama-user 192.168.0.3/32 md5
host ama ama-user 192.168.0.4/32 md5

Для более подробной информации по настройке конфига pg_hba.conf, пройдите по ссылке.

Сохранить изменения в файле;

Выбрать в списке служб postgresql и перезапустить ёё

Настройка брандмауэра Windows

Данный пункт необходим, если с СУБД PostgreSQL работает несколько пользователей одновременно. Так же, следует уточнить, что в этом пункте рассматривается базовый сценарий по открытию порта для подключения и может не подойти Вам по параметрами безопасноти.

Открыть Панель управления -> Брандмауэр защитника Windows ;

Выбрать пункт Дополнительные параметры ;

Выбрать пункт Правила для входящих подключений -> Создать правило. . На форме мастре создания правила выбрать Для порта и нажать Далее

Выбрать пункт Протокол TCP и пункт Определенныйе локальные порты . На стадии установки СУБД PostgreSQL было предложено указать порт для доступа к БД PostgreSQL. Номер порта необходимо ввести в поле Определенные локальные порты: (по умолчанию, при установке указывается порт 5432 ) и затем нажать Далее

Читайте также:  Что означает вай фай в спящем режиме

Выбрать пункт Разрешить подключение и затем нажать Далее

Выбрать все пункты и нажать Далее

Задать имя правила, например ama-pg и нажать Готово

Настройка порта завершена

После выполнения всех пунктов данной инструкции, к БД Postgres можно подключаться с удаленного компьютера

По умолчанию, сервер баз данных pgsql разрешает подключение только с локального компьютера. Данная инструкция показывает, как разрешить подключения с удаленных систем. Она написана на примере Linux CentOS и PostgreSQL 9.5.

Для начала посмотрим путь расположения баз данных:

# ps aux | grep postgres | grep — -D

Команда выдаст, примерно, следующее:

Нас интересует строчка после -D. В данном примере /db/pgsql — это путь расположения баз и конфигурационных файлов сервера баз данных.

Теперь открываем на редактирование основной файл конфигурации PostgreSQL:

* напоминаю, что начало пути /db/pgsql может быть другим. Мы его получили командой ps.

Находим и редактируем следующее:

* по умолчанию, параметр закомментирован и настроен на прослушивание запросов только с локального сетевого интерфейса. В данном примере мы разрешили прослушивание запросов на всех IP-адресах (*), но, если требуется более безопасная настройка, можно просто перечислить последние через пробел.

После открываем на редактирование следующий конфигурационный файл:

и внизу добавляем следующую строку:

host all all 192.168.0.10/32 password

* в данном примере мы разрешаем удаленные подключения к серверу с компьютера 192.168.0.10. Доступ предоставляется всем учетным записям и всем базам (значение all). При желании, вместо all можно указать конкретные данные для повышения безопасности.

Чтобы изменения вступили в силу, перезапускаем службу postgresql:

# systemctl restart postgresql-9.5

Проверить подключение можно с удаленного компьютера следующей командой:

# psql -h 192.168.0.15 -U usersql

* где 192.168.0.15 — IP-адрес сервера баз данных; usersql — имя учетной записи, от которой идет подключение.

19 января 2014 г. 13:27

Читайте также:  Закачать ссылку на яндекс

​В первую очередь нужно разрешить подключаться к postgresql с внешних ip. Для этого находим файл postgresql.conf (у меня находится в папке /etc/postgresql/9.1/main) и правим следующую строчку:

Обратите внимание, что нужно убрать перед директивой listen_addresses знак комментария #.

А в файле pg_hba.conf (лежит в там же, что и postgresql.conf) добавляем следующую строчку:

где:
hostssl — подключаемся через SSL
all — разрешаем подключение ко всем базам
postgreadmin — имя пользователя, которому разрешаем подключение
0.0.0.0/0 — маска сети с которой можно подключаться
md5 — способ шифрования пароля

Теперь нам нужно создать пользователя postgreadmin в postgresql, через которого будем подключаться:

Используемые опции команды createuser :

-s — добавить пользователю права суперпользователя
-r — разрешить пользователю создавать других пользователей
-d — разрешает пользователю создавать базы данных
-P — добавить к пользователю пароль

Настройка закончилась, самое время перезапустить postqresql, например командой:

и уже подключиться с другого ПК, используя какой-нибудь клиент, например, pgadmin.

В pgadmin нужно щёлнуть "Новое подключение" и в окне ввести следующие поля:

Имя — желаемое имя, например: my_server

Хост — ip-адрес сервера, например: 188.123.456.768

Порт — 5432 (по умолчанию)

Имя пользователя — postgreadmin

Пароль — созданный выше пароль

Остальные поля стоят по умолчанию. Нажимаете OK. Если всё заработало, то поздравляю — удалённое подключение к postgresql настроено.

Рекомендуем к прочтению

Добавить комментарий

Ваш адрес email не будет опубликован.