Не удается получить доступ к psql после установки postgres
Я установил postgresql через homebrew на своем 10.7.3. Установка казалась успешной, и я смог запустить сервер. Однако, когда я пытаюсь получить доступ к PSQL, я получаю следующую ошибку:
psql: FATAL: role "larson" does not exist
В этом случае larson
мое имя пользователя Кто-нибудь знает, в чем проблема и что я могу сделать, чтобы решить ее?
1 ответ
... Возможно, потому что вы никогда не создавали пользователя с таким именем в системе Postgres.
Postgres имеет собственные механизмы внутренней аутентификации и авторизации для пользователей.
При первом подключении к Postgres вам необходимо подключиться как начальный пользователь, который был настроен при настройке кластера базы данных (обычно этот пользователь называется postgres
или же pgsql
- или то же имя, что и у пользователя (операционной системы), под которым работает демон Postgres), и создайте еще нескольких пользователей (например, пользователя для вашей ОС). larson
).
По умолчанию psql
пытается соединиться с именем пользователя БД, которое совпадает с именем пользователя ОС, запускающего приложение.
Что-то вроде psql -U pgsql .... [database name]
вероятно, получит вас.
Это ваш второй вопрос об основных принципах Postgres. Вы ДЕЙСТВИТЕЛЬНО должны провести некоторое время с документацией.
Вы должны прочитать ВСЕ из этого, но если это слишком сложно, по крайней мере, прочитайте (и следуйте вместе) всю главу 1, очень хороший учебник.
Я абсолютно на 100% серьезно отношусь к этому. Проект PostgreSQL является золотым стандартом, по которому я оцениваю документацию каждого проекта с открытым исходным кодом. Он превосходит качество многих коммерческих систем и действительно говорит вам все, что вам нужно знать о настройке и администрировании сервера Postgres.
Иди прочитай это сейчас. Я обещаю, что сервер все еще будет там, когда ты вернешься.
(К вашему сведению это точная ошибка: FATAL: role "...." does not exist
упоминается в руководстве, вместе с более подробными инструкциями о том, как войти в Postgres в первый раз и / или создать больше пользователей).