请注意,本文编写于 618 天前,最后修改于 618 天前,其中某些信息可能已经过时。
简述
本文主要记录Oracle-processes、session和transactions参数基本计算关系,以及对我们系统有何影响。
正文
1.计算公式
Oracle版本 | processes参数 | session参数 | transactions参数 | 数据范围 |
---|---|---|---|---|
11.1 | 300 | (1.1*processes)+5 | 1.1*sessions | processes:与OS有关session:1 to 2^31^ session:4 to 2^32^ |
11.2 | 300 | (1.1*processes)+22 | 1.1*sessions | processes:与OS有关session:1 to 2^31^ session:4 to 2^32^ |
2.常用SQL查询数据库进程的连接数:
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查询数据库允许的最大连接数:
select value from v$parameter where name = 'processes'; #show parameter processes;
修改数据库允许的最大连接数:
alter system set processes = 500 scope = spfile;
(需要重启数据库才能实现连接数的修改)
重启数据库:
shutdown immediate;
startup;
查看当前有哪些用户正在使用数据:
select osuser 机器名,a.username 数据库账号,cpu_time/executions/1000000||'s' 数据库执行时间,sql_fulltext 完整SQL,machine 用户机器
from v$session a,v$sqlarea b
where a.sql_address = b.address
order by cpu_time/executions desc;
3.实操记录
3.1show parameter processes
3.2show parameter sessions
3.3show parameter transactions
3.4alter system set processes = 500 scope = spfile;
省略(修改前请先设置快照)