• ORA-00018: maximum number of sessions exceeded 超出最大会话数


    ORA-00018: maximum number of sessions exceeded
    ORA-00018: 超出最大会话数

    Cause:
          All session state objects are in use.
          所有会话状态对象都在使用中。

    Action:
          Increase the value of the SESSIONS initialization parameter.
          增加会话初始化参数的值。

          Oracle 默认 Processes 的值是 150,导致实际的 Sessions 的值会超过设置值(Sessions 的数量是 Processes * 1.1 + 5),所以会出错。

    解决方法:
          建议将 Processes 的值往大了改(视硬件和系统实际配置而定)

    # 查看当前系统中的Process
    SQL> show parameter processes;
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- -------
    aq_tm_processes                      integer     1
    db_writer_processes                  integer     1
    job_queue_processes                  integer     10
    log_archive_max_processes            integer     2
    processes                            integer     150
    
    SQL> show parameter sessions;
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------
    java_max_sessionspace_size           integer     0
    java_soft_sessionspace_limit         integer     0
    license_max_sessions                 integer     0
    license_sessions_warning             integer     0
    logmnr_max_persistent_sessions       integer     1
    mts_sessions                         integer     165
    sessions                             integer     170
    shared_server_sessions               integer     165
    
    
    # 将Process设置为500
    SQL> alter system set processes=500 scope=spfile;
    系统已更改。
    
    重新启动数据库使改动生效。
    
    
    SQL> shutdown immediate;
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    
    SQL> startup
    ORACLE 例程已经启动。
    
     
    
    # 再次查看,确实改过来了。
    SQL> show parameter processes;
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- -------
    aq_tm_processes                      integer     1
    db_writer_processes                  integer     1
    job_queue_processes                  integer     10
    log_archive_max_processes            integer     2
    processes                            integer     500
    
     
    
    SQL> show parameter sessions;
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------
    java_max_sessionspace_size           integer     0
    java_soft_sessionspace_limit         integer     0
    license_max_sessions                 integer     0
    license_sessions_warning             integer     0
    logmnr_max_persistent_sessions       integer     1
    mts_sessions                         integer     550
    sessions                             integer     555
    shared_server_sessions               integer     550
    
    注意:按照上面所述方法修改后如果还有问题的话请参照如下方法。
    如果报:Ora-00020 Maximum Number of processes(500) execeed超出最大进程数的错误,证明问题并不是那么简单
    
    

      

  • 相关阅读:
    poi 导出excel表格
    js 表单非空校验
    表格添加 点击添加增加一列
    date日期比较
    oralce 匿名块 练习
    SQL 入门
    Map集合&&异常处理&&file类
    Properties集合&&工具类FileUtils
    Java中Date类&&Calendar类
    jquery的基础
  • 原文地址:https://www.cnblogs.com/morgan363/p/11078164.html
Copyright © 2020-2023  润新知