• Oracle数据库需要修改默认的Profiles,避免用户密码过期


    今天Oracle数据库遇到一个问题,用户在用客户端登陆数据库时,抛出异常:

    ORA-00020: maximum number of processes (150) exceeded

    从表面上看是Oracle连接的用户过多,但是这是一个开发环境,没有什么系统在使用,就我们几个开发人员用,之前从来没有出现过这个异常,所以也不知道怎么回事。于是在网上Google了一下,解决办法就是把数值设置的大一点,于是我重启了服务器,设置成了300,执行了如下命令。

    SQL> alter system set processes=300 scope=spfile;

    过来一会儿服务器又提示同样的异常了。于是又重启了服务器,结果发现另外的一个刚才没有注意到的问题,informatica无法使用了。这个时候仔细研究,发现原来是informatica的密码过期了,可能是informatica不断的试着使用过期的密码去连接数据库,导致数据库的连接被占用完,所以其他系统都无法使用数据库了。

    原来,Oracle里面在创建用户是我使用的是Default Profile,而这个默认的配置里面,密码的过期策略是180天过期,一看我有好几个数据库用户都要在这两天内过期。解决的办法是修改Default Profile,把密码过期策略改为永不过期。执行的脚步就是:

    ALTER PROFILE "DEFAULT" LIMIT
      SESSIONS_PER_USER UNLIMITED
      CPU_PER_SESSION UNLIMITED
      CPU_PER_CALL UNLIMITED
      CONNECT_TIME UNLIMITED
      IDLE_TIME UNLIMITED
      LOGICAL_READS_PER_SESSION UNLIMITED
      LOGICAL_READS_PER_CALL UNLIMITED
      COMPOSITE_LIMIT UNLIMITED
      PRIVATE_SGA UNLIMITED
      FAILED_LOGIN_ATTEMPTS 10
      PASSWORD_LIFE_TIME UNLIMITED
      PASSWORD_REUSE_TIME UNLIMITED
      PASSWORD_REUSE_MAX UNLIMITED
      PASSWORD_LOCK_TIME 1
      PASSWORD_GRACE_TIME 7
      PASSWORD_VERIFY_FUNCTION NULL;

    对于已经密码过期的用户,那么就需要重新启用这个用户,设置下密码了,对于快过期而没有过期的用户,那么就不要修改了,都会变成永不过期。

    所以建议在安装Oracle数据库后,修改一下Default Profile,把密码改为不过期,毕竟以后很多服务都要不断的定期修改密码很麻烦的,虽然定期修改密码是个好习惯。

  • 相关阅读:
    Redis的数据结构
    Centos6.5安装Redis3.0备忘记录
    Centos6.5安装MySQL5.6备忘记录
    QueryRunner使用之可变条件的处理
    List集合遍历整理
    js获取select标签选中的值
    linuxC/C++面试问题总结整理
    live555学习(一)通读Makefile编译live555
    入园博客开篇
    springboot 整合 MongoDB 实现登录注册,html 页面获取后台参数的方法
  • 原文地址:https://www.cnblogs.com/studyzy/p/1981682.html
Copyright © 2020-2023  润新知