zoukankan      html  css  js  c++  java
  • ORA-28001: the password has expired

    今天在执行程序时,突然报了个这个错,之前项目是正常的,后来一查,是因为oracle11g创建用户缺省密码过期限制是180天(即6个月);

    如果超过180天用户密码未做修改则该用户无法登录。 Oracle公司是为了数据库的安全性默认在11G中引入了这个默认功能,但是这个

    默认的功能很容易被DBA或者是开发人员给疏忽,一旦密码180天未修改过,就会出现这样的问题。

     1.需要使用dba登录.使用cmd/sqlplus 命令或者是pl/sql登录

    2.可以执行语句

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

    你会看到用户的密码限制是180天后更改

    3.解决办法

      (1).你可以直接修改用户密码

          alter user UserName identified by Password;

    去除180天的密码生存周期的限制

      (2).你也可以去除180天的密码生存周期的限制,把它变成unlimited

          alter profile default limit password_life_time unlimited;

      这句SQL语句将口令有效期默认值180天修改成了“无限制”。但是出于数据库安全性考虑,不建议将PASSWORD_LIFE_TIME值设置成UNLIMITED,建议大家定期修改数据库用户口令。

  • 相关阅读:
    OO第三单元作业总结
    OO第二单元作业总结
    OO第一单元总结
    OO第四单元总结
    OO第三单元总结
    OO第二单元总结
    OO第一单元总结
    OO Unit4 总结
    OO Unit3 总结
    OO Unit2 总结
  • 原文地址:https://www.cnblogs.com/meng70345/p/4549340.html
Copyright © 2011-2022 走看看