Я хотел бы научиться использовать postgres, поэтому я просто установил его, установил свой пароль и добавил каталоги \bin
и \lib
в свой системный путь. Затем я запустил psql
в командной строке, ввел пароль, который только что установил, когда мне было предложено, и теперь я получаю эту ошибку:
psql: error: FATAL: password authentication failed for user "me"
Я не понимаю, почему это произошло. Есть идеи? Я использую виндовс 10.
Ах! Это сработало, спасибо. Не могли бы вы объяснить немного больше, пожалуйста? Теперь я немного сбит с толку, потому что у меня сложилось впечатление, что я могу просто набрать psql без указания. Есть ли что-то, что я должен сделать?
Установщик Windows попросит вас указать пароль для суперпользователя с именем «postgres». Но если вы просто наберете psql
, вы пытаетесь войти в систему как PostgreSQL, имя которого совпадает с именем пользователя вашей ОС Windows. Но этот пользователь PostgreSQL, вероятно, даже не существует, не говоря уже о том, чтобы иметь тот же пароль, который вы указали при установке.
Таким образом, при первом входе в систему вы должны указать ему войти в систему как первоначальный суперпользователь с помощью -U postgres
. После входа в систему вы можете создать пользователя с именем «я» (создайте его с паролем — возможно, таким же, как первый назначенный вами пароль, хотя обычно они будут другими) и базу данных с именем «я». С них вы можете войти в эту новую базу данных как этот новый пользователь, просто набрав psql
, а затем указав пароль, когда он спросит.
Как правило, начальный пользователь и исходная база данных используются только для операций обслуживания. Другие задачи должны быть выполнены с пользователями и в базах данных, которые вы настроили после первого входа в систему. Конечно, это не «закон», это просто «хорошая идея».
Вероятно, вы установили пароль для пользователя
postgres
, а не для пользователяme
. Укажите, под каким именем вы хотите войтиpsql -U postgres
.