#postgresql #authentication #psql #fatal-error
Вопрос:
Пользователь Windows 10 пытается либо навсегда удалить роль, чтобы ошибка не отображалась, либо создать суперпользователя без пароля.
Я искал несколько часов безрезультатно. Пытался:
Создание нового пользователя и базы данных с помощью СУПЕРПОЛЬЗОВАТЕЛЯ CREATE USER Nistic; Регистрация БАЗЫ ДАННЫХ С ПОМОЩЬЮ ВЛАДЕЛЬЦА Nistic;
Роль была успешно создана, но при выходе из системы и повторном входе в систему ввод «psql» в терминале все равно вызовет ту же ошибку. [РЕДАКТИРОВАТЬ] Я могу войти под именем пользователя postgres, введя psql-U postgres, но по какой-либо причине имя пользователя по умолчанию по-прежнему имеет значение Nistic.
Я уже проверил файл conf и настроил все методы на доверие. Я попытался удалить пользователя и воссоздать его заново.
Я просто хотел, чтобы заголовок включал пользователя более общего характера, несмотря на то, что он показан выше.
Я в значительной степени перепробовал все остальное, что смог найти, ПОЭТОМУ.
Пожалуйста, помогите, спасибо.
Экран ниже, чтобы показать некоторые из странностей (пожалуйста, прочитайте каждую строку перед комментарием — проблема в том, что после избавления от Nistic он все еще ожидает Nistic)
Комментарии:
1. Если вы не можете войти в систему с
psql
помощью как это делаетсяCREATE USER
иCREATE DATABASE
? Кроме того, как бы вы это ни делали, что отображается в качестве имени пользователя? Есть ли у вас более одного запущенного экземпляра Postgres, и если да, то уверены ли вы, что подключаетесь к правильному экземпляру. Кроме того, вы уверены, что редактируете правильныйpg_hba.conf
файл?2. Я могу войти в систему с помощью psql-U postgres, и все. Команды «Создать» определенно работают. Извините, что я не решался предоставить эту информацию, потому что я не хотел, чтобы это звучало так, как будто я кого-то принижаю на самом деле, но да, я все это перепробовал, и я уверен, что редактировал правильный файл (pg_hba.conf).
3. Мне кажется, что зависть
PGUSER
была установлена. См. Раздел Переменные Env . Я больше недостаточно использую Windows, чтобы рассказать вам, как это проверить. Это автоматически приведет к эквивалентному pf-U Nistic
при использованииpsql
без a-U <some_user>
. В противном случае по умолчанию для-U
in без указания егоpsql
значения будет использоваться имя пользователя операционнойfoste
системы . Тем временем вам нужно будет принудительно указать имя пользователя, указав-U <some_name>
его .4. Имя пользователя, которое вы создали, было в нижнем регистре, так как вы не заключили имя в двойные кавычки в SQL. Но у того, под чьим именем вы пытались войти, была заглавная буква.
5. Я не могу в это поверить, но это был правильный ответ, @jjanes. Я упустил это из виду, потому что думал, что все роли автоматически делаются строчными, и не понимал, что это можно изменить с помощью кавычек.