当前位置:  首页  >  PHP教程  >  PHP 基础  >  基础教程

Oracle提示修改密码ORA-28002和ORA-28221数据库用户修改密码报错解决办法

当遇到密码只有X天使用期错误提示时:ORA-28002:thepasswordwillexpirewithinstringdays如ERROR:ORA-28002:thepassw

当遇到密码只有X天使用期错误提示时:ORA-28002: the password will expire within string days 如 ERROR:ORA-28002: the passw

修改数据库用户密码,当用户不是dba级用户即普通用户时,修改密码必须用replace子句(即必须知道旧密码才能改)
ALTER USER hljitsm IDENTIFIED BY hljitsm_123


ALTER USER HLJITSM IDENTIFIED BY hljitsm_123 replace Oracle_1234

否则直接使用 ALTER USER hljitsm IDENTIFIED BY hljitsm_123修改密码时会报'ORA-28221: REPLACE not specified'错误

当遇到密码只有X天使用期错误提示时:ORA-28002: the password will expire within string days
如 ERROR:ORA-28002: the password will expire within 6 days
除了修改密码外,还可以修改密码使用期天数避免此类限制。

1.SELECT username,profile FROM dba_users where username like 'TEST1';

USERNAME PROFILE
------------------------------ ------------------------------
TEST1 DEFAULT


一般用户的profile设置都为DEFAULT。当然有些也会是别的,比如:NEW_PROFILE,反正就是查到什么就是什么。

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

PROFILE RESOURCE_NAME RESOURCE LIMIT
------------------------------ -------------------------------- ------------------------------------------------
DEFAULT PASSWORD_LIFE_TIME PASSWORD 180dys

==============================================================

3.修改DBA_PROFILES中PASSWORD_LIFE_TIM的设置,改为ULIMITED。
执行语句:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;


修改后设置立即生效,不需要重启数据库,,此时密码永远不会过期。

修改后,还没有被提示ORA-28002警告的用户不会再碰到同样的提示;
已经被提示的用户必须再改一次密码,用dba用户登录,然后输入修改语句,如下:

Sql代码

alter user username identified by 自己想改成的新密码

如果不是dba用户,就参照本文开头的方法命令修改。

相关阅读:

Oracle 11g 缺省密码期限问题 - ORA-28002

ORA-01172、ORA-01151错误处理

ORA-00600 [2662]错误解决

ORA-01078 和 LRM-00109 报错解决方法

ORA-00471 处理方法笔记

ORA-00314,redolog 损坏,或丢失处理方法

吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有