Соединение R DBI неожиданно закрыто сервером + сервер аварийно завершен до или во время обработки запроса
Я используюDBI
иpqdriver
для Postgres черезRPostgres::Postgres()
для установки соединения, как показано ниже.
con <- DBI::dbConnect(RPostgres::Postgres(), dbname = "my_db", host = "10.10.10.194", port = 5432, user = "my_user", password = "my_password")
Используя тот же разъем, я могу подключиться к версии UAT нашей среды, но не могу подключиться к рабочей среде, несмотря на то, что все учетные данные и т. д. верны.
Ошибка, которую я получаю:
Ошибка: сервер неожиданно закрыл соединение. Вероятно, это означает, что сервер аварийно завершил работу до или во время обработки запроса.
На всю жизнь я не могу понять, как отлаживать эту проблему. я умею успешноtelnet
, но только при подключении, как указано выше, моя попытка не удалась.
Обновление 1
Я попытался проверить у администратора ИТ/БД, и они задаются вопросом, происходит ли это, потому чтоdbConnect
использует любые прокси для доступа. Не знаю, как я могу это увидеть?
Кроме того, я пыталсяtraceback
чтобы получить следующее (я уверен, что будут лучшие способы отладки, о которых я не знаю...)
Обновление 2
Вот что я получаю, если запускаю через JDBC:
1 ответ
Возможно, это связано с более строгими настройками разрешений для вашего производственного экземпляра postgreSQL. Даже если user/pwd совпадают, рабочий экземпляр может принимать подключения только с локального хоста или определенных IP-адресов. Кроме того, аутентификация с использованием имени пользователя/пароля может быть отключена, что позволяет использовать, например, только метод "cert".
Пожалуйста, проверьте файл /etc/postgresql/VERSION/main/pg_hba.conf (или проверьте/объясните его вашему администратору баз данных/ИТ).
Кроме того, это может быть связано с определенными настройками брандмауэра/безопасности для вашего производственного экземпляра. Это позволит подключаться только с определенных IP-адресов или просто отбросит все пакеты из СУБД на вашу машину.
HtH