我的问题原本是我无法使用PostgreSQL因为我不知道密码 - 我也没有用过。我试图重置或恢复密码,并遵循各种建议尝试这样做。
首先,我尝试编辑pg_hba.conf文件,我使用以下命令找到该文件:
sudo vim /etc/postgresql/9.3/main/pg_hba.conf
但是这只是把我带到了一个空白屏幕,除了关闭窗户外,我无能为力。
有人告诉我试试:
sudo nano /etc/postgresql/9.3/main/pg_hba.conf
...这更好,因为这包括页面底部的关键命令,但文件是空白的,因此无法编辑。
回到这个之后,我想会造成一些错误,如果我现在回到它,我明白了:
E325: ATTENTION
Found a swap file by the name "/var/tmp/pg_hba.conf.swp"
owned by: root dated: Tue Oct 17 15:57:30 2017
file name: /etc/postgresql/9.3/main/pg_hba.conf
modified: YES
user name: root host name: Roberts-MacBook-Pro.local
process ID: 2668
While opening file "/etc/postgresql/9.3/main/pg_hba.conf"
(1) Another program may be editing the same file. If this is the case,
be careful not to end up with two different instances of the same
file when making changes. Quit, or continue with caution.
(2) An edit session for this file crashed.
If this is the case, use ":recover" or "vim -r
/etc/postgresql/9.3/main/pg_hba.conf"
to recover the changes (see ":help recovery").
If you did this already, delete the swap file
"/var/tmp/pg_hba.conf.swp"
to avoid this message.
Swap file "/var/tmp/pg_hba.conf.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit,
(A)bort:
我尝试通过输入D来删除.swp文件,但这似乎没有做任何事情。
我对所有这些感到非常困惑,而且我真的不知道如何能够学到更多东西来理解我的所作所为。当我访问PostgreSQL网站时,我读到了pp_hba.conf文件应该是什么样子,但是我可以访问这个文件的唯一方法就是它完全是空的。
我不知道从哪里开始,所以我非常感谢任何能指出我正确方向的人的建议,谢谢。
答案 0 :(得分:0)
只要启动了PostgreSQL,您就可以通过运行找出应该编辑的pg_hba.conf
:
ps -ef | grep 'postgres -D'
在我奇怪的设置中,返回:
/opt/boxen/homebrew/opt/postgresql/bin/postgres -D /opt/boxen/homebrew/var/postgres
所以我知道要编辑文件:
/opt/boxen/homebrew/var/postgres/pg_hba.conf
更改允许哪些连接到哪些数据库等。有关详细信息,另请参阅pg_hba.conf docs。