ITPub博客

首页 > 数据库 > Oracle > 【ORA-28001】11g 口令已经失效,用户密码过期

【ORA-28001】11g 口令已经失效,用户密码过期

原创 Oracle 作者:yhdmy 时间:2015-09-28 15:44:34 0 删除 编辑
一、问题描述与分析
       Oracle 11G的新特性,创建用户时缺省密码过期限制是180天, 超过180天用户密码未做修改则该用户无法登录,并报错ORA-28001,如下图。


二、故障处理:
1. 发现数据库用户无法连接并报错ORA-28001: 口令已经失效,此时只需要对用户密码进行修改即可。

SQL> conn hualian/hualian@bigdata
ERROR:
ORA-28001: 口令已经失效


更改 hualian 的口令
新口令: ******
重新键入新口令: ******
口令已更改
已连接。


2. 因为这个限定是为了安全考虑,定期要对密码进行更新,可生产环境或测试环境有时是不需要该限定,反而会出现用户无法登录的问题。所以可以通过修改系统级profiles file进行变更。以下是对另一个用户进行解锁处理并变更系统级profile file使得180天为unlimited。


C:\Documents and Settings\tangyangyang>set ORACLE_SID=BIGDATA

C:\Documents and Settings\tangyangyang>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期一 9月 28 13:03:37 2015

Copyright (c) 1982, 2010, Oracle.  All rights reserved.


连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select username ,account_status from dba_users username='GOME_CENTER';

USERNAME                       ACCOUNT_STATUS
------------------------------ --------------------------------

GOME_CENTER                    EXPIRED

已选择1行。

SQL> alter user gome_center identified by gome_center account unlock;

用户已更改。


SQL> select profile from dba_users where username=‘GOME_CENTER';

PROFILE
------------------------------
DEFAULT

SQL> select * from dba_profiles where profile='DEFAULT' and resource_name='PASSW
ORD_LIFE_TIME';

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


SQL> alter profile default limit password_life_time unlimited;

配置文件已更改

SQL>select * from dba_profiles where profile='DEFAULT' and resource_name='PASSW
ORD_LIFE_TIME’;

PROFILE                        RESOURCE_NAME                    RESOURCE
------------------------------ -------------------------------- --------
LIMIT
----------------------------------------
DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD
UNLIMITED


SQL> conn gome_center/gome_center@bigdata;
已连接。

三、总结
       Oracle 11g的新特性,建立用户后默认使用default profile 文件中的password_life_time参数值(180),在到达180天时,要求用户对密码要进行更新,否则无法登录。如果修改default profile文件中的password_life_time为unlimited后,未到达180天的用户就按照新的参数来进行,无需担心这个问题喽。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26148431/viewspace-1810902/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
曾就职于铁道科学研究院,太极计算机公司,合力中税。负责过国家电网数据库部署、迁移、升级、灾备等实施规划工作。大唐发电厂、北京市公安局数据库运维及优化工作。现任金融工场高级DBA岗位,负责oracle、mysql数据库相关工作。拥有Oracle技术10g/11g的 OCP与OCM认证,Oracle YEP成员,OCM联盟成员。

注册时间:2013-04-22

  • 博文量
    106
  • 访问量
    1573538