在Oracle中session和process的区别

 我来答
育知同创教育
2016-03-05 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
session是一个会话,process是一个服务器进程,二者是不同的概念。
oracle中系统process和session的联系:
在SharedServer中的Process 和Oracle 中的Session不是一一对应的,Shared Server中的Process 一个对应着Oracle 中的一个或者一个以上的Session。在dedicated server机器上试验证明:数据库的session和操作系统process是对应的
即表示一个session对应一个process,但是一个process未必对应一个session。
华夏日长兴
推荐于2016-08-08 · TA获得超过9592个赞
知道大有可为答主
回答量:6305
采纳率:85%
帮助的人:3695万
展开全部
修改oracle的processes和session
2011-01-25 09:49:54| 分类: Oracle学习笔记|字号 订阅

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

疑点一:能够连接到SGA的操作系统进程数,这种进程包括哪些进程? Windows系统中的线程数,是指所有与oracle相关的进程的线程数之和?

疑点二:在共享服务器和专用服务器环境中,算法有什么不同?

哪位兄弟了解比较透彻,请指点一下,拜谢!

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

疑问:在C/架构中,是指Oracle用户登陆建立的会话数?在B/S架构中又怎么算呢?

2,尽管概念不是很明白,遇到这种问题还得干活先:

1).通过SQLPlus修改
Oracle的sessions和processes的关系是
sessions=1.1*processes + 5

使用sys,以sysdba权限登录:
SQL> show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- ---------------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 150
SQL> alter system set processes=400 scope = spfile;
系统已更改。
SQL> show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- -----------------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 150
SQL> create pfile from spfile;
文件已创建。

重启数据库,OK!

SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 171966464 bytes
Fixed Size 787988 bytes
Variable Size 145488364 bytes
Database Buffers 25165824 bytes
Redo Buffers 524288 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter processes;

NAME TYPE VALUE
------------------------------------ ----------- ----------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 400
SQL> show parameter session;

NAME TYPE VALUE
------------------------------------ ----------- ----------------
java_max_sessionspace_size integer 0
java_soft_sessionspace_limit integer 0
license_max_sessions integer 0
license_sessions_warning integer 0
logmnr_max_persistent_sessions integer 1
session_cached_cursors integer 0
session_max_open_files integer 10
sessions integer 445
shared_server_sessions integer
SQL>

【注:sessions是个派生值,由processes的值决定,公式sessions=1.1*process + 5】
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ddhe9527
2015-04-14 · TA获得超过133个赞
知道小有建树答主
回答量:119
采纳率:0%
帮助的人:49.4万
展开全部
这个要看DB是否工作在共享服务器模式了

如果是共享模式,一个process可以为多个session提供服务;
如果是专用模式,一个process对应一个session;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式