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;