【postgresql】role "root" does not exist 解决办法


https://blog.csdn.net/weixin_30809083/article/details/87921787

 

问题原因
postgresql是不允许使用root用户启动服务的,所以必须切换到其他用户下才可以进行正常的服务启动,但是有些时候我们又需要使用root用户来使用postgresql

解决办法
方法一
非必要情况下就不要用root用户使用postgresql

方法二
手动创建root role,我这里是使用用户名为postgres来启动postgresql服务的

su postgres
# 创建root用户
postgres=#create user root with password 'password';    
CREATE ROLE

# 将数据库权限赋予root用户
postgres=# GRANT ALL PRIVILEGES ON DATABASE mydatabase to root;
GRANT

# 将用户修改为超级用户(看实际需求)
postgres=# ALTER ROLE root WITH SUPERUSER;

postgres=# \q

也可以直接将root创建为超级用户,login是指允许登录

CREATE ROLE root superuser PASSWORD 'password' login;

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM