如题。
我网上只找到了查看连接数
select count(*) from v$session   数据库允许的最大连接数
select value from v$parameter where name = 'processes' 修改最大连接数
alter system set processes = 300 scope = spfile;
但是并没有找到每增加一个连接数,会消耗多少的CPUOracle中有相关的语句吗?

解决方案 »

  1.   

    增加连接数,处理INACTIVE状态的不占用CPU的,会占用一定的内存,
    ACTIVE是根据执行的SQL情况来决定的
      

  2.   

    一个连接?要看你的连接做了什么操作啊
    才能知道一个连接占用的CPU
      

  3.   

    一个连接做的是数据的新增或修改或删除之类的,因为是有可能多台机器并发的进行操作的,所以想知道消耗的内存或CPU 怎么查看
      

  4.   

    select max(pga_used_mem)/1024/1024 M from v$process;   ----当前一个process消耗最大的内存
    select min(pga_used_mem)/1024/1024 M from v$process where pga_used_mem>0; ---process消耗最少内存呵呵 我也刚刚找到
      

  5.   

    ?内存?
    你不是想问消耗多少CPU和时间?
      

  6.   


    呵呵,刚刚 tangren 说 增加连接数,处理INACTIVE状态的不占用CPU的,会占用一定的内存
    所以问题转向了 内存。
      

  7.   

    select count(*) from v$process

    select count(*) from v$session到底哪个才是查看连接数的呢?
      

  8.   

    有dba管理权限用户直接oem可以进去查看进程用到的内存 oracle的管理现在很容易的说
      

  9.   

    select count(*) from v$session
    首先搞清楚session和PROCESS的关系session:     oracle     server中用于与数据库进行交互的会话   
      process:   os进程,与oracle进行通信   
        
      所有与数据库进行的通信都是通过进程来进行,该参数的设置,决定了连接进程数,一个client的连接有一个进程,后台进程也包含在该参数内(lgwr、dbwr、ckpt、arch等等进程)   
        
      但一个进程可能有多个会话,这是连接oracle后在server里面启动的   
        
      对于init文件中参数设置,   
      原则上是进程数量控制了client的连接数量   
      会话数应该大于进程数   
      

  10.   

    select count(*) from v$process 下查询结果是13个
    select count(*) from v$session 下查询结果是10个是进程数大于会话数