zoukankan      html  css  js  c++  java
  • Oracle 11g中修改默认密码过期天数和锁定次数

    Oracle 11g中修改默认密码过期天数和锁定次数

    密码过期的原因一般有两种可能:

    一、由于Oracle中默认在default概要文件中设置了“PASSWORD_LIFE_TIME=180天”所导致。

    二、由于Oracle中默认在default概要文件中设置了“FAILED_LOGIN_ATTEMPTS=10次”,当输入密码错误次数达到设置值将导致此问题。

    第一种情况解决方法如下:
    
    
    1、查看用户用的哪种profile策略,一般是default: 
    SQL> select username,profile from dba_users; 
    USERNAME                PROFILE 
    ------------------ ----------------- 
    MGMT_VIEW             DEFAULT 
    SYS                   DEFAULT 
    SYSTEM                DEFAULT 
    EKPUSER               DEFAULT 
    
    2、查看指定概要文件(如default)的密码有效期设置: 
    SQL> Select * FROM dba_profiles s Where s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'; 
    PROFILE                        RESOURCE_NAME           RESOURCE_TYPE LIMIT 
    ------------------------------ ----------------------- ------------ -------- 
    DEFAULT                        PASSWORD_LIFE_TIME        PASSWORD      180 
    
    3、将密码有效期由默认的180天修改成“无限制”: 
    sql> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; 
    Profile altered 
    修改之后不需要重启动数据库,会立即生效。 
    
    4、修改后,还没有被提示ORA-28002警告的帐户不会再碰到同样的提示;已经被提示的帐户必须再改一次密码,举例如下: 
    sqlplus / as sysdba 
    sql> alter user smsc identified by <原来的密码> ----不用换新密码 
    sql> alter user system identified by root; 
    sql> alter user scott identified by tiger; 
    oracle11g启动参数resource_limit无论设置为false还是true,密码有效期都是生效的,所以必须通过以上方式进行修改。以上的帐户名请根据实际使用的帐户名更改。 
    
    第二种情况解决方法如下: 
    
    1、查看用户的proifle是哪个,一般是default: 
    sql> SELECT username,PROFILE FROM dba_users; 
    
    2、查看指定概要文件(如default)的密码有效期设置: 
    sql> SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='FAILED_LOGIN_ATTEMPTS'; 
    
    3、将尝试登录失败次数由默认的10次修改成“无限制”: 
    sql> ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED; 
    
    4、修改后,还没有被提示ORA-28000警告的用户不会再碰到同样的提示; 
    已经被锁定的帐户必须解除锁定,举例如下: 
    sqlplus / as sysdba 
    sql> alter user smsc identified by oracle account unlock; 
    
    5、修改后default profile应该如下: 
    sql> select * from dba_profiles WHERE dba_profiles.profile='DEFAULT'; 
    PROFILE      RESOURCE_NAME            RESOURCE_TYPE   LIMIT 
    ------------ ----------------------- --------------- ---------------------- 
    DEFAULT      FAILED_LOGIN_ATTEMPTS    PASSWORD        UNLIMITED 
    DEFAULT      PASSWORD_LIFE_TIME       PASSWORD        UNLIMITED 
    修改之后不需要重启动数据库,会立即生效。 
    如果出现ORA-28000 the account is locked.错误 
    alter user 用户名 account unlock;
    
  • 相关阅读:
    wget(转)
    852. Peak Index in a Mountain Array
    617. Merge Two Binary Trees
    814. Binary Tree Pruning
    657. Judge Route Circle
    861. Score After Flipping Matrix
    832. Flipping an Image
    461. Hamming Distance
    654. Maximum Binary Tree
    804. Unique Morse Code Words
  • 原文地址:https://www.cnblogs.com/flyback/p/6214692.html
Copyright © 2011-2022 走看看