postgresql 密码修改,忘记密码进行修改重置

41 篇文章 2 订阅
35 篇文章 0 订阅

postgresql 密码修改,忘记密码进行修改重置

1、密码修改缘由

1、客户端认证方式为密码验证,设置初始密码,则会涉及到修改密码
2、忘记了数据库登录密码,则会涉及到修改密码

2、修改密码的方式

方式1

安全地修改密码:

使用psql,连接到Postgres Server:

1、远程ssh连接到服务器

ssh user@192.168.0.100 
# 命令使用参数说明:

NAME
     ssh — OpenSSH SSH client (remote login program)

SYNOPSIS
     ssh [-1246AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-E log_file]
         [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file] [-J [user@]host[:port]] [-L address]
         [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address]
         [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]] [user@]hostname [command]

2、切换到postgres用户

su postgres

3、连接数据库

psql -p 5432 -h localhost 
pguser=> \password
Enter new password:
Enter it again:
pguser=>

我将原密码123456,修改为u123456
这种修改方式相当于向Postgres Server 发送了如下命令:

ALTER USER postgres PASSWORD ' bebd6e154c9e92bcb8f7228384b1ba30' ;

后面的字符串是 u123456经过md5加密后的字符串

注意:为避免字典攻击,建议使用复杂认证密码。

方式2

可以直接发送sql修改:

这种方式不仅仅限于psql了,其余客户端也能修改,如pgAdmin,navicat,DBeaver等

ALTER USER pguser PASSWORD 'password123'

弊端:通过sql修改,有可能会将修改语句记录在相关工具的log里。
例如:通过psql 运行该条sql,则在.psql_history文件中会有相应语句的记录
有密码泄露的风险

3、忘记密码重置

解决方法:

1、关闭数据库服务

2、进入数据库的工作空间目录 (postgresql目录下的 data 目录)

3、编辑修改文件 pg_hba.conf, 把连接权限设置的 md5 加密方式 改成 trust

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5

在这里插入图片描述

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust

4、重新启动postgresql数据库服务

5、可以不用密码就能用postgres用户登陆,然后执行修改用户密码的操作

alter user postgres with password 'password12345';

6、修改 pg_hba.conf 文件,改回到 md5 方式

7、重启数据库服务

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值