Oracle中的Connect/session和process的区别及关系介绍

时间:2021-05-02

Session:在计算机中,尤其是在网络应用中,称为“会话”。
Session:在计算机专业术语中,Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入系统到注销退出系统之间所经过的时间。

Connect、session、process的区别:
一个数据库的Connect可以有一个或多个session,同时connect也可以有一个或多个process.
在专业服务器连接方式中,一个session对应一个process,在共享服务器方式中,一个process可以为多个session。
一个session也可以存在若干个process中,并行同样是一个session对应一个process,主session是coordinator session,每个parallel process同样会对应数据库里一个单独的session。
可以从v$px_session和v$session查看。

比如某客户端连接数据库的session和process的值:

复制代码 代码如下:


select * from v$session where terminal='RUIFEI'



复制代码 代码如下:


select * from v$process
where addr in
(select paddr from v$session where terminal='RUIFEI')


如果是专用服务器方式连接,session和process是一样的。

连接connects,会话sessions和进程pocesses的关系
每个sqllogin称为一个连接(connection),而每个连接,可以产生一个或多个会话,如果数据库运行在专用服务器方式,一个会话对应一个服务器进程(process),如果数据库运行在共享服务器方式,一个服务器进程可以为多个会话服务。

oracle中系统process和session的关系
在SharedServer中的Process 和Oracle 中的Session不是一一对应的,Shared Server中的Process 一个对应着Oracle 中的一个或者一个以上的Session。我在dedicated server机器上试验了
数据库的session和操作系统process是对应的
即表示一个session对应一个process,但是一个process未必对应一个session

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章