Добрый день.
Сервер OpenSUSE 12.3
Postgresql 9.2.7
Пока было установлено локально, ODBC подключался, сделал таблицы и т.д. При переносе в рабочую конфигурацию - сервер и клиентские машины, возникла проблема.
* вырезка файла pg_hba.conf
local all all trust # IPv4 local connections: host workdb winuser 10.0.2.0/24 trust # IPv6 local connections: host all all 1/128 trust # Allow replication connections from localhost, by a user with the # replication privilege. #local replication postgres trust #host replication postgres 127.0.0.1/32 trust #host replication postgres 1/128 trust
пользователь, под которым пытаюсь подключиться с удалённого компьютера - winuser
Создаю подключение ODBC, при тесте получаю:
ВАЖНО: в pg_hba.conf нет записи, разрешающей подключение для репликации с компьютера "192.168.0.26" для пользователя "winuser" базы данных "workdb", SSL выкл.
Здесь 192.168.0.26 адрес сервера.
Мне репликация не нужна (пока во всяком случае). Если убрать комменты и отредактировать последние строки по пользователю и адресам, то тест проходит и к базе подключаюсь. Можно бы махнуть рукой, но как требовать пароль от пользователя (не trust метод), где это может всплыть, да и хотелось бы понять в чём точно проблема. Файл postgresql.conf редактировался только на предмет listen_adresses = '*'.
> да и хотелось бы понять в
> да и хотелось бы понять в чём точно проблема.
Нет никакой проблемы. Просто нужно грамотно заполнить pg_hba.conf
> но как требовать пароль от пользователя (не trust метод)
Пароль будет требоваться при попытке подключения к БД. Если вы работаете через ODBC значит есть какое-то приложение, значит в этом приложении должно быть диалоговое окно, которое запрашивает имя и пароль и потом передаёт его на подключение драйверу.