Orcal登录密码过期

问题呈现

好几个月没有用Orcal了,今天晚上突然想登录玩一下,但是发现密码过期了:

执行请求的操作时遇到错误: 0RA-28001:the password has expired 28001.00000-"the password has expired" *Cause:The user's account has expired and the password needs to be changed *Action:change the password or contact the DBA 供商代码28001

 

 

问题原因

Oracle提示错误消息ORA-28001: the password has expired,是由于Oracle11G的新特性所致, Oracle11G创建用户时缺省密码过期限制是180天(即6个月), 如果超过180天用户密码未做修改则该用户无法登录。 Oracle公司是为了数据库的安全性默认在11G中引入了这个默认功能,但是这个默认的功能很容易被DBA或者是开发人员给疏忽,一旦密码180天未修改过,就会出现这样的问题。 

解決办法

1.运行cmd;

2.使用 sqlplus / as sysdba命令,进入oracle数据库;

3.使用下面的语句查看密码的有效天数为180天,也就是三个月:

select * from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';

 

 

 4.如果想去除180天的密码生存周期的限制可通过如下SQL语句将其关闭

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

 

 

 5.进行以上步骤之后需要改变密码,否则还会出现password has expired异常, 注意,这里所谓的更改,可以和原来密码一样....

ALTER USER 用户名 IDENTIFIED BY 密码 ; 
例如:
ALTER USER gdnh IDENTIFIED BY admin123; 

 

 

 6.至此问题解决;

 

posted @ 2020-08-22 22:15  指尖下的世界  阅读(262)  评论(0编辑  收藏  举报
/* 看板娘 */ /*炸泡*/
/* 鼠标点击求赞文字特效 */