Как переименовать суперпользователя postgres по умолчанию в "root"?
в настоящее время я вхожу в PostgreSQL, используя psql -U postgres
. Как переименовать postgres
пользователю root
?
если я уже вошел в систему postgres
затем пытается ALTER USER postgres RENAME TO root
скажу ERROR: session user cannot be renamed
.
можно ли переименовать пользователя без регистрации как postgres
пользователей? Я не думаю, что у меня есть другой суперпользователь, так как это новая установка PostgreSQL.
кстати, я запускаю Gentoo на Amazon EC2.
3 ответов
вы должны иметь возможность просто создать новый суперпользователь postgres под названием root, войдя в систему как пользователь postgres и (в оболочке) набрав;
createuser --superuser root
psql> create database root owner root
после этого, при входе в систему как root, вы должны иметь возможность делать то, что вы хотите с пользователем postgres.
вы можете попробовать
update pg_authid set rolname ='root' where rolname = 'postgres';
но имейте в виду, что жевать системные каталоги вручную всегда немного опасно.