沃梦达 / 编程技术 / 数据库 / 正文

Oracle报错:ORA-28001:口令已失效解决办法

最近在工作中遇到了一个问题,错误是Oracle报错ORA-28001:口令已失效,下面这篇文章主要给大家介绍了关于Oracle报错:ORA-28001:口令已失效的解决办法,需要的朋友可以参考下

一、链接Oracle报错 :ORA-28001:口令已失效

解决办法

原因:Oracle11G创建用户时缺省密码过期限制是180天(即6个月), 如果超过180天用户密码未做修改则该用户无法登录

解决方式:

  • 方式一: 在密码将要过期或已经过期时进行修改密码,密码修改后该用户可正常连接数据库
  • 方式二: 将口令有效期默认值180天修改为“无限制”。但是出于数据库安全性考虑,不建议将PASSWORD_LIFE_TIME值设置成UNLIMITED

二、查看数据库密码默认有效期:

登录Oracle,在CMD命令窗口中输入:

sqlplus scott/tiger@orcl as sysdba;

查看用户的proifle是哪个,一般是default

select username,PROFILE FROM dba_users;

查看对应的概要文件(如default)的密码有效期设置:

SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

三、解决方式一:修改用户密码

alter user 用户名 identified by 新密码;

四、解决方式二:修改默认有效期

将概要文件(如default)的密码有效期由默认的180天修改成“无限制”,修改之后不需要重启动数据库,会立即生效

alter PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

修改后,还没有被提示ORA-28002警告的用户账号不会再碰到同样的提示;而已经被提示的用户账号必须再改一次密码

alter user 用户名 identified by <原来的密码> account unlock; //可以不用换密码

总结

到此这篇关于Oracle报错:ORA-28001:口令已失效的文章就介绍到这了,更多相关Oracle ORA-28001:口令已失效内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!

本文标题为:Oracle报错:ORA-28001:口令已失效解决办法

基础教程推荐