天天看点

oracle连接进程数设置

<a href="http://www.cnblogs.com/ruiy/p/webs.html" target="_blank">oracle连接进程数设置</a>

SQL&gt; select count(*) from v$session  #连接数

SQL&gt; Select count(*) from v$session where status='ACTIVE' #并发连接数

SQL&gt; show parameter processes  #最大连接 

process:

     这个参数限制了能够连接到SGA的操作系统进程数(或者是Windows 系统中的线程数),这个总数必须足够大,从而能够适用于后台进程与所有的专用服务器进程,此外,共享服务器进程与调度进程的数目也被计算在内.因此,在专用服务器环境中,这是一种限制并发连接数的方法.

sessions:

    是被应用于oracle层次而非操作系统层次.在不考虑通过专用服务器或共享服务器进行登录的情况下,这个参数限制了对指定实例的并发登陆数.

<a href="https://s4.51cto.com/oss/201710/25/d272b1bd0314a38bc8fa59dbcf1a4204.png-wh_500x0-wm_3-wmp_4-s_733270176.png" target="_blank"></a>

摘(二)

  查询数据库当前进程的连接数:select count(*) from v$process;

  查看数据库当前会话的连接数:select count(*) from v$session;

  查看数据库的并发连接数:        select count(*) from v$session where status='ACTIVE';

  查看当前数据库建立的会话情况:select sid,serial#,username,program,machine,status from v$session;

  查询数据库允许的最大连接数:select value from v$parameter where name = 'processes';

  或者:show parameter processes;

  修改数据库允许的最大连接数:alter system set processes = 300 scope = spfile; (需要重启数据库才能实现连接数的修改)

  重启数据库:

  shutdown immediate;

  startup;

查看当前有哪些用户正在使用数据:

select osuser,a.username,cpu_time/executions/1000000||'s',sql_fulltext,machine from v$session a,v$sqlarea b where a.sql_address = b.address order by cpu_time/executions desc;