POstgreSQL. Доступ к БД.
Здравствуйте! Я хотел поменять пароль к роли sa.
Это привело к тому, что я не могу подсоединиться к базе - ни через pgadmin, ни через Командную строку. Все сводится к одной ошибке - Error connecting to the server FATAL: role sa is not permitted to log in.
Здесь обсуждался этот вопрос, но решение не найдено кроме переустановки
http://ru.pokerstrategy.com/forum/thread.php?threadid=807003
http://ru.pokerstrategy.com/forum/thread.php?threadid=163569
Как получить доступ к этой БД, либо же как то решить вопрос по другому?
В pg_hba.conf поставьте trust
В pg_hba.conf поставьте trust для пользователя postgres, затем подключитесь к базе и установите нужный пароль. Затем trust поменяйте обратно.
FATAL: role postgres is not permitted to log in
Это я сделал пароль не спрашивает при подключении, но выдает ту же ошибку что и раньше
а если подключаться через
а если подключаться через psql что напишет?
Пробовал подключиться: psql
Пробовал подключиться: psql -d template1. Выдает ошибку: psql FATAL: role "Администратор" does not exist
Ну тогда последнее средство.
Ну тогда последнее средство. Выполняется с командной строки. В Linux'е работает.
1. Останавливаете PostgreSQL
2. Далее в командной строке:
postgres --single
backend> CREATE ROLE admin SUPERUSER;
backend>
нажать CTRL-D для выхода в командную строку.
Теперь trust для пользователя admin, заходите под ним и правьте роль "Администратор" или чего там у вас
Остановил PostgreSQL ввел
Остановил PostgreSQL
ввел postgres --single
Появилось сообщение:
выполнение PostgreSQL пользователем с правами администратора не допускается.
Сервер должен быть запущен под ID непривилегированного пользователя , чтобы предотвратить возможные компромиссы системы безопасности.
Найдите ту учётную запись из
Найдите ту учётную запись из под которой стартует служба, залогиньтесь под ней и далее как уже было написано.
Могли бы и сами догадаться!