Права суперпользователя на postgres
Как получить права суперпользователя на postgres. Я один из пользователей Linux, но у меня нет прав на создание пользователей в postgres. Как я могу получить права суперпользователя в postgres?
Это мой pg_hba.conf:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all ident sameuser
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 md5
3 ответа
У Postgres есть собственный пользователь с правами администратора, который в основном не связан с системным администратором или пользователем root. Когда вы настраиваете свой экземпляр postgres, очень вероятно, что для вас был создан его пользователь-администратор, так что лучше узнайте в документации по установке или распространению, какой у него был пароль.
Внутренние роли Postgres по существу не связаны с учетными записями операционной системы. Тем не менее, многие дистрибутивы пытаются настроить учетную запись суперпользователя базы данных для соответствия учетной записи операционной системы; Глядя на ваш параметр pg_hba.conf, вполне вероятно, что вам нужно sudo для пользователя postgres (уровень ОС), а затем войти в базу данных с помощью psql. Это связано с тем, что в настоящее время вы настроены на аутентификацию с использованием идентификатора sameuser, что означает (в упрощенном объяснении), что для подключения из локальной системы вам нужна роль базы данных, соответствующая учетной записи пользователя операционной системы. Это может или не может быть то, что вы хотите продолжать идти вперед; Я рекомендую прочитать это: http://www.depesz.com/index.php/2007/10/04/ident/
Счет postgres
должны иметь права суперпользователя, такие как postgreSQL, попробуйте войти как postgres
и дать ему шанс.