这个问题可能已经在这里的某个地方得到了回答,但是三天后我一直找不到解决方案,我想我已经检查了所有的stackoverflow。
我的问题是我忘记了登录Postgresql数据库(v11)的密码(或至少无法登录)。
我在cmd(使用Windows 7)中输入
psql -h localhost -U 'my_user_name'
然后返回“输入密码”,然后我得到
psql FATAL:用户'my_user_name'的密码验证
因此,我进入pg_hba.conf文件并更改了行
host all all ::1/128 md5
到
host all all ::1/128 trust
但是运行psql -h localhost -U'my_user_name'
此后我得到
“ psql致命:用户'my_user_name'不存在”
我该如何解决?我只想重设密码,以便我可以再次登录数据库。
答案 0 :(得分:0)
postgres超级用户可能仍然存在。尝试运行psql -h localhost -U postgres
然后,您可以更改原始用户:
ALTER USER my_user_name PASSWORD 'password';
答案 1 :(得分:0)
您不需要通过IP域全部信任。 您只需要通过Unix套接字域连接进行更改
local all all trust
重新启动PostgreSQL服务器 要登录,只需要用户名
psql -U postgres
然后只需重置密码
\password postgres
退出更改并将其还原为config,最后一次重新启动。您可以使用新密码访问自己的帐户。