[英]psql: FATAL: role “vagrant” does not exist
我一直試圖設置流浪漢,但我收到了這個錯誤。 我將列出我的安裝方法。 請在您認為需要的地方建議更改。
- 安裝虛擬盒子
sudo apt-get install virtual box
-ranown網站上的.downloaded .deb包
- 使用安裝它
sudo dpkg -i (package_name)
然后我選擇了fullstack文件夾中的vagrant文件夾
vagrant up
vagrant ssh
然后我做了:
vagrant@vagrant-ubuntu-trusty-32: cd /vagrant/forum vagrant@vagrant-ubuntu-trusty-32:/vagrant/forum$ sudo apt-get install postgresql-client-common vagrant@vagrant-ubuntu-trusty-32:/vagrant/forum$ sudo apt-get install postgres-xc-client
最后:
vagrant@vagrant-ubuntu-trusty-32:/vagrant/forum$ psql psql: FATAL: role "vagrant" does not exist
您需要更改為postgres
用戶並授予vagrant超級用戶訪問權限。
sudo su - postgres
createuser vagrant -s
exit # exit from postgres user back into vagrant
你現在可以和流浪者一起做。
發生這種情況是因為postgres中沒有指定角色。 如果沒有指定角色,它會嘗試使用帳戶的用戶名作為默認角色,從而導致您的錯誤。 所以,現在,你可以為流浪漢用戶創建postgres角色,或者只使用postgres用戶本身。 所以,首先,使用postgres用戶登錄:
psql -U postgres
然后,為用戶流浪者創建一個角色
CREATE ROLE vagrant LOGIN;
如果您想要密碼,請使用:
CREATE USER vagrant WITH PASSWORD 'password';
要么
CREATE ROLE vagrant WITH LOGIN PASSWORD 'password';
CREATE USER與CREATE ROLE相同,但USER表示LOGIN。
1)首先退出流浪漢提示
出口
2)停止流浪者實例
流浪漢停止
3)消滅流浪者實例
流浪漢毀滅
4)創建一個新實例
流浪漢
這可能會解決它。 它至少對我有用。(嘗試過)
您正在嘗試使用vagrant用戶連接到postgresql。 在這種情況下,postgresql y尋找相應的vagrant角色(如果未指定,則用戶的默認角色是它的用戶名)。 但是,看起來沒有創建這樣的角色。
您可以創建角色,或嘗試使用postgres用戶登錄:
vagrant@vagrant-ubuntu-trusty-32:/vagrant/forum$ psql -U postgres
您還可以指定要連接的數據庫名稱:
vagrant@vagrant-ubuntu-trusty-32:/vagrant/forum$ psql -U postgres -d DATABASENAME
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.