Я думаю, что случайно сменил своего пользователя на роль, в которой вход запрещен. Теперь я даже не могу войти в систему, чтобы дать роли авторизации. Что я могу сделать?
Я думаю, что был только 1 пользователь, и я не знаю, как перечислить всех своих пользователей, если я не могу сначала войти в систему.
Спасибо
Я переустановил postgres, и мне кажется, что пользователя postgres не существует. Я установил через brew:
Основная учетная запись суперпользователя настраивается initdb при запуске и по умолчанию будет использовать текущее системное имя пользователя, а не postgres, если не указан явный аргумент -u / - username. Из вашего выше \du
вывести ясно, что при настройке сервера вы сделали это с вашим системным пользователем Laygr, поскольку этот пользователь является основной учетной записью суперпользователя сервера базы данных.
Если вы испортите свои права входа в систему или забудете пароль, вы можете вернуться на сервер, если у вас есть права записи в его каталог данных, чтобы иметь возможность редактировать pg_hba.conf. Просто измените метод аутентификации в соответствующей строке на trust
и перезагрузите конфигурацию сервера через pg_ctl reload
. Затем вы можете войти в систему, исправить своего пользователя / пароль, а затем отменить изменения, внесенные в pg_hba.conf, и снова перезагрузить конфигурацию.
Использовать пользователя по умолчанию postgres
для входа в систему и повторной активации вашей учетной записи. Конечно, вам нужно знать postgres
пароль пользователя ...