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

  • A+
所属分类:oracle


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

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: