>  기사  >  데이터 베이스  >  Oracle 11g 强制修改密码 ORA-28001 的 处理方法

Oracle 11g 强制修改密码 ORA-28001 的 处理方法

WBOY
WBOY원래의
2016-06-07 17:20:521442검색

收到一个监控用户无法连接数据库的告警, Oracle提示错误消息ORA-28001: the password has expired, 上去查看用户状态竟然是exp

收到一个监控用户无法连接数据库的告警, Oracle提示错误消息ORA-28001: the password has expired, 上去查看用户状态竟然是expired,获取用户基本信息脚本如下:

connect / as sysdba;

col username for a16

col password for a18

col user_id for 999999

col account_status heading 'Account|Status' for a20

col default_tablespace heading 'Default|Tablespace' for a25

col temporary_tablespace heading 'Temporary|Tablespace' for a12

set lines 125

set pages 100

select username,user_id,password,account_status,default_tablespace,temporary_tablespace,to_char(created,'yyyy-mm-dd hh24:mi:ss') created

from dba_users

order by username;

这是Oracle11G的一个新特性, Oracle11G创建用户时缺省密码过期限制是180天, 如果超过180天用户密码未做修改则该用户无法登录。

查看PROFILE设置

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

DEFAULT  PASSWORD_LIFE_TIME PASSWORD 180

处理逻辑,将用户密码修改并判断是否需要这个策略

ALTER USER 用户名 IDENTIFIED BY 密码 ;

语句进行修改密码,密码修改后该用户可正常连接数据库。

如果需要修改策略

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED

语句将口令有效期默认值180天修改成“无限制”。

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.