主要參考文档:http://www.itpub.net/thread-1714191-1-1.html

Oracleh有两种server模式shared mode和dedicated mode。

Dedicated mode下。client每发来一个连接请求。数据库都要给这个请求建立一个服务进程来完毕响应。而在shared mode下。oracle会首先建立一定数目的服务进程,client发来的请求会首先发送到dispatcher即调度器,然后由dispatcher依据服务进程的忙闲情况。选择性的把请求交付给详细的服务进程进行响应。共享服务进程作出响应后,把响应的结果再交给dispatcher,由dispatcher再次交付给client。在这个过程中,涉及到两个队列。即请求队列跟响应队列。这两个队列都位于SGA中,共享连接的会话信息放置在Large pool中,因此对SGA的使用很多其它。

使用shared mode和dedicated mode的优劣。

使用dedicated mode,由于为每个连接请求建立一个专属进程进行响应。所以它的响应速度要比shared mode快,但dedicate mode要为每个请求建立专属的PGA,所以对内存的需求更高。但在生产环境中,大多数都是使用dedicated mode。同一时候dedicated mode也是oracle的默认模式。

使用shared mode能够有效降低系统进程数目,能够在内存限制比較大的环境中使用。

但shared mode由于在client请求与server响应之间,必需要走dispatcher这道程序。也就更easy造成拥堵或死锁,也可能由于某一请求长时间占用服务时间而造成其它请求的长时间等待,此外,共享模式不easy实现trace。在生产环境中。大多不适用shared mode,而使用中间件软件来实现类似的需求。

查看当前系统的server模式

Show parameter shared

首先shared_servers显示的系统启动时候启用的共享服务进程的个数。这个參数大于0表示启用了共享模式,这个參数不用设置过大,过大会添加启动时间,oracle会自己主动依据负载调节共享服务进程的个数,这个数值仅仅是启动时候的初始值。

Max_shared_servers这个參数设置了共享服务进程的最大数。

Show parameter dispatcher

仅仅启动shared_server并不能真正启用共享模式,还须要设置好dispatchers。

Dispatchers的内容形如‘(protocol=tcp) (service=jf01) (dispatchers=3)’。

当中protocol表示协议类型,service表示要启用共享模式的服务名,dispatchers表示初始调度进程的数量。

Max_dispatchers为调度进程的最大数目。

共享模式下相应的后台进程分别为以“S”和“D”开头的,S开头的为服务进程,D开头的为调度进程。形如S000,S001,D000,D001此类。能够通过select pname from v$process查看。

启用禁用共享模式

Dedicated模式是oracle的默认模式,oracle也不推荐使用shared模式。

启用共享

Alter system set shared_servers=2;

设置此參数大于0

Alter system set dispatcher=’(protocol=tcp) (service=jf01) (dispatchers=3)’;

设置要启用共享模式的服务。

此外。还须要再client的tnsnames.ora文件里,在要使用共享模式连接的实例解析下更改

CONNECT_DATA 中的 (SERVER=SHARED )一项。

仅仅有这样,client才会发起建立共享连接的请求。假设此时服务端没有启用共享模式。则会出现错误提示:

ORA-12520 TNS:Listener count not find available handler for requested type of server。

禁用共享模式

Alter system set shared_server=0;

Alter system set dispatcher=’’;

这样就能够了。

查看当前会话的信息

Select server from v$session;

相关视图

V$shaed_server

V$dispatcher

V$circuit

oracle的shared、dedicated模式解析的更多相关文章

  1. Oracle AWR报告指标全解析-11011552

    1-5 Top 5 Timed EventsWaits : 该等待事件发生的次数, 对于DB CPU此项不可用Times : 该等待事件消耗的总计时间,单位为秒, 对于DB CPU 而言是前台进程所消 ...

  2. oracle dblink 查询 tns:无法解析指定的连接标识符

    问题情景是这样的:我在数据库服务器(windows server 2008r2 ,64bit)oracle(11gr2,64bit)中通过dblink连接到另外一台服务器(hp-ux)的oracle( ...

  3. MVVM模式解析和在WPF中的实现(六) 用依赖注入的方式配置ViewModel并注册消息

    MVVM模式解析和在WPF中的实现(六) 用依赖注入的方式配置ViewModel并注册消息 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二 ...

  4. MVVM模式解析和在WPF中的实现(五)View和ViewModel的通信

    MVVM模式解析和在WPF中的实现(五) View和ViewModel的通信 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 M ...

  5. MVVM模式解析和在WPF中的实现(三)命令绑定

    MVVM模式解析和在WPF中的实现(三) 命令绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...

  6. Oracle中Clob类型处理解析:ORA-01461:仅可以插入LONG列的LONG值赋值

    感谢原作者:破剑冰-Oracle中Clob类型处理解析 上一篇分析:ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值 最近为Clob字段在插入数据时发现当字符的字节数(一个半角字符一 ...

  7. 修改oracle数据库为归档模式

    参考博客:http://blog.csdn.net/codesaint/article/details/1901030 Oracle分为非归档模式(NOARCHIVELOG)  和归档模式(ARCHI ...

  8. Android开发MVP模式解析

    http://www.cnblogs.com/bravestarrhu/archive/2012/05/02/2479461.html 在开发Android应用时,相信很多同学遇到和我一样的情况,虽然 ...

  9. Oracle启动和归档模式

    数据库运行 Oracle数据库的完整启动过程是分步骤完成的,包含以下3个步骤: 启动实例–>加载数据库–>打开数据库 因为Oracle数据库启动过程中不同的阶段可以对数据库进行不同的维护操 ...

随机推荐

  1. IE浏览器部分js代码不生效的问题

    [小小坑记录] 问题描述:IE浏览器写好功能代码之后,在调试模式下程序能正常运行.不开启调试模式正常访问时js部分功能代码不生效. 原因:在测试时用了console对象在控制台输出一一些内容,而IE的 ...

  2. Mac设置命令别名

    文件中添加 /Users/xxx/.bash_profile 添加别名命令: alias pull='git pull origin' 注意:等号后面不能有空格 从新读取配置文件: source ~/ ...

  3. BZOJ 4033 [HAOI2015]树上染色 ——树形DP

    可以去UOJ看出题人的题解. 这样的合并,每一个点对只在lca处被考虑到,复杂度$O(n^2)$ #include <map> #include <ctime> #includ ...

  4. log4j中isDebugEnabled(), log.isInfoEnabled()和log.isTraceEnabled的封装

    1. log4j中log.isDebugEnabled(), log.isInfoEnabled()和log.isTraceEnabled()作用 项目在应用log4j打印Debug,Info和Tra ...

  5. 手把手教你搭建DHCP服务器

    目录 DHCP实现原理 DHCP定义 DHCP分配方式 DHCP工作过程 初次登录 重新登录 更新租约 搭建DHCP服务器 实验目的 实验环境 实验步骤 实验结果 DHCP实现原理 DHCP定义 DH ...

  6. 能量项链(codevs 1154)

    题目描述 Description 在Mars星球上,每个Mars人都随身佩带着一串能量项链.在项链上有N颗能量珠.能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数.并且,对于相邻的两颗珠子 ...

  7. html-Span 指定宽度

    html-Span 指定宽度 css: span{ display:-moz-inline-box; display:inline-block; width:150px; } 链接:如何设置HTML ...

  8. android开启线程,异步处理数据实例

    package com.example.sywang2; import com.zds.os.R; import android.os.Bundle; import android.os.Handle ...

  9. SGU101 求有重边的无向图欧拉迹

    题意:好多木棒,俩端有数字(0--6)标记,按数字相同的端首尾相连成一条直线(木棒可以相同).即求有重边的无向图欧拉迹. 先判定是否为欧拉图,俩个条件,不说了.如果是欧拉图,输出路经. 方法:dfs遍 ...

  10. 多语言业务错误日志收集监控工具Sentry 安装与使用

    Sentry 是一个实时事件日志记录和汇集的平台.其专注于错误监控以及提取一切事后处理所需信息而不依赖于麻烦的用户反馈. Sentry是一个日志平台, 它分为客户端和服务端,客户端(目前客户端有Pyt ...