关于强制修改postgreSQL的密码(密码忘记)的方法

在长久的工作中总会出现密码忘记的事情,在postgreSQL中,如果忘记密码,可以进行以下操作来在无需登录的情况下修改密码!


前提表明:我用的是windows系统,Linux系统没机会、没条件尝试

一、首先关闭服务,Windows系统可以按win键+R调用运行,键入 services.msc来进入服务管理,在列表中找到postgreSQL的服务,右键停止,如下图:关于强制修改postgreSQL的密码(密码忘记)的方法_第1张图片


二、找到postgreSQL安装路径,在路径下的/data文件夹下,找到pg_hba.conf的文件,编辑打开,一般情况在最下有几行代码:
# TYPE  DATABASE        USER            ADDRESS                 METHOD

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#host    replication     postgres        127.0.0.1/32            md5
#host    replication     postgres        ::1/128                 md5
在#IPV4 local connections:下的
hostall all127.0.0.1/32 md5
将md5修改为trust,
注:我在修改之后,仍无法实现,所以讲IPV6下的md5也修改为trust
保存文件。
三、重新启动服务
在这里不要用pgAdmin打开数据库,用psql来运行,发现不需要在输入口令就可以进入,进入后输入:
ALTER user postgres with password '你要更改的新密码';
【因为是忘记密码,所以建议再将pg.hba.conf文件改回md5状态,这样比较安全,但修改后一定要重启服务】

你可能感兴趣的:(postgreSQL入坑之路)