你好,游客 登录 注册 搜索
背景:
阅读新闻

Oracle下ORA-28002错误处理

[日期:2017-12-28] 来源:Linux社区  作者:jim123 [字体: ]

最近一段时间突然收到Nagios上的一条Oracle报警:

CRITICAL - ORA-28002: the password will expire within 7 days

在多方资料查询下得知是Oracle下的默认是使用系统的安全策略,这些安全策略都是写在初始化配置文件profile中,一般都是在运行Oracle的用户的家目录中

[root@localhost sql]# su - oracle
[oracle@localhost ~]$ ls -al
…略…
-rw-r--r--. 1 oracle oinstall   441 12月 23 13:44 .bash_profile
…略…

一般运行Oracle时都是给它分配普通用户权限,所以常规下普通用户的缺省密码时间是180天,到期前7天使用账号连接Oracle时会有ORA-28002的错误提示,所需要做的就是对Oracle的用户重置一次密码即可。操作也很简单:

[oracle@localhost ~]$ sqlplus / as sysdba #使用DBA账户系统身份验证
SQL> SELECT username,profile FROM dba_users; #查看用户的profile设置,一般用户的profile设置都为DEFAULT
SQL> SELECT FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'; #查看系统profiles中PASSWORD_LIFE_TIME设置,一般默认创建的用户账户LIMIT字段一般都是‘180days’
 
PROFILE                        RESOURCE_NAME                    RESOURCE
------------------------------ -------------------------------- --------
LIMIT
----------------------------------------
DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD
180
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;#把Oracle默认的过期时间设置为永不过期
 
Profile altered.
  
SQL> ALTER USER username IDENTIFIED BY youpassword;#此时再重置一次快要过期的用户密码,用户密码可以和原来的一致,平时用户密码忘记也是通过DBA账户系统身份验证进入Oracle来重置用户密码

此时再用普通用户的用户密码登录Oracle就可以正常的登录,没有ORA-28002的错误提示

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-12/149916.htm

linux
相关资讯       ORA-28002 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款