ORA-28002 Oracle口令过期

由于oracle11g中默认在default概要文件中设置了“PASSWORD_LIFE_TIME=180天”,导致密码过期,程序无法使用,业务进程会提示无法连接数据库等字样。下面我给大家详细介绍一下,如何解决Oracle 11g 密码过期的问题。

工具/原料

  • 电脑、Oracle11g

方法/步骤

  1. 首先Win键+R键,打开运行窗口,输入cmd 回车,

    如何处理Oracle 11g 密码过期问题

  2. 打开管理员窗口,如下图所示:

    如何处理Oracle 11g 密码过期问题

  3. 用数据库system账号登录:

    C:\Users\Administrator>sqlplus

    SQL*Plus: Release 11.1.0.7.0 - Production on 星期二 4月 23 11:57:57 2013

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

    请输入用户名:  system

    输入口令:

    ERROR:

    ORA-28002: the password will expire within 7 days

  4. 连接到:

    Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production

    With the Partitioning, OLAP, Data Mining and Real Application Testing options

    ◆查看用户的proifle是哪个,一般是default(这个步骤仅用于检查,可以不要):

    SQL> SELECT username,PROFILE FROM dba_users;

  5. ◆检查密码的有效期是否为默认的180天(这个步骤仅用于检查,可以不要):

    SQL> SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

    PROFILE                        RESOURCE_NAME                    RESOURCE LIMIT

    ------------------------------ -------------------------------- -------- ----------------------------------------

    DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD 180

    如何处理Oracle 11g 密码过期问题

  6. 将密码有效期由默认的180天修改成“无限制”:

    SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

    如何处理Oracle 11g 密码过期问题

    如何处理Oracle 11g 密码过期问题

  7. 检查密码的有效期是否为默认的180天:

    SQL> SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

    完成修改

    如何处理Oracle 11g 密码过期问题

1: 已经被提示的“口令过期”的帐户必须再改一次密码,举例如下:
  $sqlplus / as sysdba
  sql> alter user 用户名 identified by  密码    <原来的密码> ----不用换新密码

以上的帐户名请根据实际使用的帐户名更改。

问题2:oracle数据库用户被锁定的处理:
使用oracle用户登录系统,执行如下步骤:
1:$ sqlplus /nolog

2:SQL> connect /as sysdba     如果此句不行,则使用 connect system/密码;(此句根据具体情况使用用户名、密码和数据库名称<sid名称>)
    Connected.
3:SQL> alter user system(用户名) account unlock;

猜你喜欢

转载自blog.csdn.net/qq_39569480/article/details/84238961
今日推荐