20211026-Oracle 如何恢复sys用户历史密码

在这里插入图片描述

问题:

新接手的Oracle数据库不知道sys用户密码,
虽然可以本地操作系统验证方式登录数据库,
但是指不定什么时候会用到sys密码,比如用sys用户远程登录数据库等场景。
然而数据库用户密码也不能随便更改,
即使各个应用系统连接数据库都是指定业务用户,没有使用sys用户,
但是也不能完全肯定没有其他什么系统在连接sys用户,
所以就算更改了sys密码,也要有方法可以快速恢复sys用户的历史密码。

方法:

常见的方法一般有两种。

一:在11g以前dba_users还记录用户密码的密文信息。

在修改sys或其他用户密码前,先将用户密码的密文信息查出来。

select username,password from dba_users;

还原密码操作如下,比重置密码多了一个values关键字。

alter user username identified by values 'hash密码值';

此种方法在11g时,dba_users已经不记录password了,但是可以在sys.user$里查到。

select user,password from sys.user$;

在12c开始又继续取消了user$有关password记录。

二:方法二适用于sysdba权限的用户,当然也包含sys用户

可以通过orapwd重置sys密码,重置前备份口令文件即可。
重置密码操作示例如下:

cp orapwchendb orapwchendb_20211026bak
orapwd file=orapwchendb entries=10 force=y  password=ChenJch#123

通过orapwd方式重置sys密码和使用alter user sys identified by ‘*****’;方式相同,都可以达到重置密码的目的。
恢复sys原密码,只需要恢复原口令文件即可。

#####chenjuchao 20211026 22:10 #####
欢迎关注我的公众号《IT小Chen

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值