Не удается подключиться к серверу Azure postgres, несмотря на правильное имя пользователя

При попытке подключиться к моему серверу postgres в Azure из клиента psql, я получаю следующую ошибку, хотя использую правильное имя пользователя. Как я могу это исправить?

psql: FATAL: указано неверное имя пользователя. Пожалуйста, проверьте имя пользователя и повторите попытку подключения. Имя пользователя должно быть в <username@hostname> формат.

3 ответа

Решение

Как отмечено в тексте ошибки, вы должны следовать <username@hostname> форматировать при попытке подключения к серверу postgresql, независимо от того, используете ли вы его с помощью клиента psql или с помощью pgadmin. С помощью <username@hostname> формат вместо просто <username> должен избавиться от ошибки.

Прочтите краткое руководство по порталу Azure и интерфейсу командной строки, чтобы узнать больше о том, как создавать и настраивать сервер postgres.

Имя пользователя для входа @ отлично работает для объектов, но не для строк подключения. Согласно URI RFC-3986 имя пользователя допускает шестнадцатеричное кодирование. Поэтому замените @ на%40. пользователь @ хост:pw@fullhost становится пользователем%40host:pw@fullhost

В общем, я пришел к выводу, что при попытке подключения к PostgreSQL нужно следовать такому шаблону имени пользователя: имя_пользователя@имя_хоста. Для более новых версий postgresql (после v11) это не является обязательным условием, и вы можете использовать только согласно документам. Но слово «предварительное условие» я считаю неправильным, поскольку для каждого PostgreSQL v15 имя пользователя должно быть . Наконец, если хост — localhost, имя пользователя должно быть четным для более старых версий.

Другие вопросы по тегам