共计 1336 个字符,预计需要花费 4 分钟才能阅读完成。
最近一段时间突然收到 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
正文完
星哥玩云-微信公众号