龙空技术网

怎么判断Oracle服务器模式(专用/共享)?

波波说运维 251

前言:

而今你们对“oracle专用模式共享模式”大概比较着重,看官们都想要知道一些“oracle专用模式共享模式”的相关内容。那么小编在网络上搜集了一些有关“oracle专用模式共享模式””的相关资讯,希望看官们能喜欢,咱们一起来学习一下吧!

概述

Oracle服务器处理请求的两种最常用的方式,这两种方式分别是专用服务器连接和共享服务器连接。

专用服务器:一个客户端连接对应一个服务器进程

共享服务器:多个客户端连接对应一个服务器进程,服务器端存在一个进程调度器来管理。

那么,怎么判断你的oracle服务器是哪种模式呢,有以下几种方法~

判断Oracle服务器模式(专用/共享)?

1、show parameter shared_server 参数

是否为配置为共享服务器最主要的参数是:show parameter shared_server

如果数值 > 0 ,就是enable了共享服务器.

也可以从v$parameter 视图中查.

2、查看tnsnames.ora

在配置为共享服务器的情况,Client可以选择用共享服务器或者专用服务器来连接到数据库,这个参数的控制是在tnsnames.ora里设定的

aaaa=

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = aaaa)(PORT = 1521))

)

(CONNECT_DATA =

(SID = aa)

(SERVER = DEDICATED)

)

)

加粗部分指定了用DEDICATED方式连接DB.

另外,Background process ,以及通过本地连接进来的,只能是DEDICATED

3、判断一个已经连接的session的连接方式

有两种方法

A.select username,server from v$session;

如果server = 'DEDICATED'则是DEDICATED方式

server='SHARED'则是shared方式,并且正有shared_server_process为其服务

server='NONE'的话,则是shared方式,并且当前没有shared_server_process为其服务。

B. 仅用于Unix 底下,似乎windown不行

连接v$session, v$process 看process中的program

1 select p.program,s.server from v$session s , v$process p

2* where s.paddr = p.addr

如果 program 为 。。(S0NN) 的,则是shared方式,并且正有shared_server_process为其服务

如果 program 为 。。(D0NN) 的,则是shared方式,并且当前没有shared_server_process为其服务

如果 program 为 其它的,则是'DEDICATED'方式

篇幅有限,关于专用服务器、共享服务器的体系结构和配置写不了了(起码3倍内容),大家有兴趣的话可以关注我然后私信下找我拿,我把笔记分享给你~

标签: #oracle专用模式共享模式 #oracle专用服务器模式 #oracle专用服务器和共享服务器 #oracle模式是什么意思