Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104609705
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-04-04 13:26:30

来源:赛迪网    作者:wang

1.是否配置为共享服务器,最主要的参数是:

8i mts_servers
9i shared_server 
show parameter shared_server mts_servers

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

2.在配置为共享服务器的情况,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

比如说sqlplus user/pass 形式

如果DB没有配置共享服务器,那么Client只能以DEDICATED方式连接DB.

3.判断一个已经连接的session的连接方式有两种方法:

A:
select server from v$session 
where ...

如果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'方式

阅读(243) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~