暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

PostgreSQL超级用户忘记密码了怎么办

原创 多米爸比 2019-12-23
4622

导读:初始化数据目录时我们会使用-W强制设置超级用户的密码,如果你有良好的设计习惯,一般会按最小权限创建普通用户来操作数据库,在需要的时候才使用超级用户。长时间不使用难免会忘记数据库超级用户密码,操作系统root忘记密码可以通过单用户模式找回,PG的超级用户密码忘记了也是可以重置的。

1. PostgreSQL数据库的两种访问方式

  • socket方式
  • host方式

socket方式比host方式访问效率高,服务器端操作访问推荐采用socket方式。

2. socket方式

$ psql -h/opt/data5555 -Upostgres
psql (12.1)
Type "help" for help.

postgres=# \conninfo
You are connected to database "postgres" as user "postgres"
  via socket in "/opt/data5555" at port "5555"

通过\conninfo命令可以看到是通过socket方式访问

3. host方式

$ psql -h127.0.0.1 -Upostgres
psql (12.1)
Type "help" for help.

postgres=# \conninfo
You are connected to database "postgres" as user "postgres" 
on host "127.0.0.1" at port "5555".

可以看到是通过host方式访问

4. 数据库防火墙

$ vi /opt/data5555/pg_hba.conf
# TYPE  DATABASE        USER            METHOD
local   all             all             trust

注意:TYPE为local的方式在window上是不合法的设置。

5. 结论

非window安装环境下可以通过配置pg_hba.conf设置免密方式进行连接,然后重置密码后再还原设置。

最后修改时间:2020-01-20 14:33:43
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论