Не удалось выполнить задание pgAgent с ошибкой аутентификации

Вопрос:Я установил pgAgent с помощью службы Windows, используя учетную запись локального компьютера, называемую postgres. Я подтвердил, что служба Windows работает нормально. Я создал задание в pgAdmin, которое должно удалить определенные записи из таблицы в моей клиентской БД. Единственный шаг в задании настраивается с использованием типа локального подключения к клиентской БД. Проблема заключается в том, что

Вопрос:

Я установил pgAgent с помощью службы Windows, используя учетную запись локального компьютера, называемую postgres. Я подтвердил, что служба Windows работает нормально. Я создал задание в pgAdmin, которое должно удалить определенные записи из таблицы в моей клиентской БД. Единственный шаг в задании настраивается с использованием типа локального подключения к клиентской БД. Проблема заключается в том, что работа прерывается каждый раз, когда в журнал событий Windows записывается следующее предупреждение:

Failed to create new connection to database ‘customer’:’fe_sendauth: no password supplied’

Я проверил, что есть файл pgpass.conf, расположенный в C:UserspostgresAppDataRoamingpostgresql. Вот его содержимое:

localhost:5432:postgres:postgres:<password_redacted>

Я не уверен, что еще попробовать. Я не смог найти дополнительную информацию об этом сообщении об ошибке, как это применимо к pgAgent.

Информация о версии:

  • PostgreSQL 9.2.4, скомпилированный Visual С++ build 1600, 64-разрядный
  • pgAdmin 1.16.1
  • pgAgent v3.3.0-1

Информация о запуске службы Windows:

C:Program Files (x86)pgAgentbinpgagent.exe RUN pgAgent host=localhost port=5432 user=postgres dbname=postgres

Некоммерческое содержимое pg_hba.conf:

host all all 127.0.0.1/32 md5 host all all ::1/128 md5 Ответ №1

То, что я делал, было на стадии работы в PgAgentIII

Я изменил тип подключения к удаленному
Установите строку подключения с помощью кнопки…
enter code here изменил user = postgres на имя пользователя моих приложений
enter code here добавлен пароль = ПАРОЛЬ (введите свой пароль)
enter code here изменить хост = 127.0.0.1

Я знаю, что дольше получаем ошибку

Надеюсь, это поможет.

Сканирование с помощью postgresql

Ответ №2

Я столкнулся с той же проблемой, что и шаг задания pgAgent, настроенный для локального подключения:
Failed to create new connection to database ‘<database_name>’:’fe_sendauth: no password supplied’

Решение с помещением пароля в строку подключения отлично работает, но кажется небезопасным.

После копания я нашел другое решение – добавление строки подключения в pgpass.conf для базы данных target для решения проблем:
localhost:5432:<database_name>:postgres:<password>

Ответ №3

Обязательно проверьте, что имя пользователя – служба pgadmin и имя пользователя файла pgpass.conf, который вы проверяете. У меня была такая же проблема, пока я не понял, что установщик pgadmin настроил службу на запуск как локальный пользователь, и я проверял pgpass.conf для того же имени пользователя, что и пользователь домена.

Оцените статью
Добавить комментарий