当前位置:   article > 正文

pgsql忘了登录免密,重置修改pgsql登录密码的方法_pgsql修改密码

pgsql修改密码

pgsql忘了登录免密,重置修改pgsql登录密码的方法

psql 命令行工具是PostgreSQL中的一个命令行交互式客户端工具,位置在安装目录的bin目录下(D:\Program Files\PostgreSQL\14\bin)

一、修改pg_hba.conf配置文件,设置免密登录

  • 文件位置
    • 打开数据目录,一般是安装目录的data文件夹
    • D:\Program Files\PostgreSQL\14\data\pg_hba.conf
  • 修改内容
    • 找到IPv4\IPv6两行,将最后的内容改为trust

修改前做好备份,密码重置完成后还需要将配置还原!

  • 修改前内容
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256
  • 1
  • 2
  • 3
  • 4
  • 修改后内容
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust
  • 1
  • 2
  • 3
  • 4

二、重置postgres账号密码

重置密码需要执行命令:psql -h 127.0.0.1 -p 5432 -U postgres

  • 参数解释
    • -h 服务地IP
    • -p 端口号
    • -U 登录账号
cd D:\Program Files\PostgreSQL\14\bin

PS D:\Program Files\PostgreSQL\14\bin> .\psql -h 127.0.0.1 -p 5432 -U postgres
psql (14.2)
输入 "help" 来获取帮助信息.

--执行postgres账号密码为postgres
postgres=# ALTER USER postgres WITH PASSWORD 'postgres';
ALTER ROLE
--退出
postgres=# \q
PS D:\Program Files\PostgreSQL\14\bin>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

三、还原pg_hba.conf文件内容

将配置文件还原为更新前状态,一下为更新前内容。

# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256
  • 1
  • 2
  • 3
  • 4

四、登录验证

修改配置后,再次尝试登录系统,看看配置是否生效,如果提示输入口令,则证明配置已经生效。

PS D:\Program Files\PostgreSQL\14\bin> .\psql -h 127.0.0.1 -p 5432 -U postgres
用户 postgres 的口令:
psql (14.2)
输入 "help" 来获取帮助信息.
-- 查看所有实例
postgres=# select datname from pg_database;
  datname
-----------
 postgres
 mybd
 template1
 template0
 qmw
(5 行记录)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

五、psql 常用命令

  • ? #所有命令帮助
  • \c [database_name] #切换到指定的数据库
  • \c #显示当前数据库名称和用户
  • \conninfo #显示客户端的连接信息
  • \d [table_name] #显示指定表的结构
  • \d #列出数据库中所有表
  • \di #列出数据库中所有 index
  • \dn #显示数据库中的schema
  • \dt #列出数据库中所有表
  • \du #显示所有用户
  • \dv #列出数据库中所有 view
  • \encoding #显示字符集
  • \h #sql命令帮助
  • \i testdb.sql #执行sql文件
  • \l #列出所有数据库
  • \o /tmp/test.txt #将下一条sql执行结果导入文件中
  • \q #退出连接
  • \x #扩展展示结果信息,相当于MySQL的\G
  • select version(); #显示版本信息

六、psql常用查询脚本

  • 查看当前数据库实例
    • \c
    • select current_database();
  • 切换数据库实例(进入某个数据库)
    • \c DB库名
    • psql –d DB库名
  • 查看数据库文件目录
    • show data_directory;
  • 查看表空间
    • select * from pg_tablespace;
  • 查看语言
    • select * from pg_language;
  • 查询所有schema,必须到指定的数据库下执行
    • select * from information_schema.schemata;
    • SELECT nspname FROM pg_namespace;
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/872124
推荐阅读
相关标签
  

闽ICP备14008679号