oracle共享服务器和专用服务器

关于专用服务器和共享服务器有个相当经典的比喻。
我们把oracle服务器比喻成一个餐馆,你去餐馆吃饭,如果有个服务员专门为你服务,从你进去就站在你身边,那这就是专用模式。如果她还未其他客人服务,那这就是共享服务器模式。
这么查看我们的服务器是共享模式还是专用模式呢?
我们可以查看shared_servers是否为0,如果是0,则代表是专用服务器模式,客户端只能用专用服务器模式连接,用共享的会报错。如果不为0,这代表共享server process的个数。客户端可以选择用专有模式还是共享模式连接。
SQL> show parameter shared_servers;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
max_shared_servers                   integer
shared_servers                       integer     1
我的服务器现在有一个共享server process在等待为人服务。
[oracle@mypc admin]$ ps aux|grep "s00"
oracle    3550  0.0  2.4 257792 10884 ?        Ss   09:41   0:00 ora_s000_orcl
oracle    3889  0.0  0.1   3932   688 pts/0    R+   11:12   0:00 grep s00
我们可以看到有一个oracle进程叫做ora_s000_orcl,就是这个了。

知道了这些,要是我们想把服务器配置成专用模式就简单了。只需要
sql>alter system set shared_servers=0
就可以了。

那么怎么设置共享服务器模式呢?要配置共享服务器模式,需要经过以下步骤:
配置参数dispatchers
在客户端用共享模式连接
1.配置dispatchers参数:
格式为:dispatchers="(attr=value)"
主要属性有:address(add,addr),description(des,desc),protocol(pro,prot),connections(con,conn),dispatchers(dis,disp)。

例如:
dispatchers="(des=(address=(protocol=tcp)(host=mypc)(port=5000)))(connections=1000)(dispatchers=2)"
des,addr,pro就不介绍了,就是怎么找到这个dispatcher以及用什么协议连接他。
conn代表每个dispatcher 可以维护多少个连接,即最多有多少个用户可以连接到这一个dispatcher上。
dis:代表初始化dispatcher的个数。既然dispatcher的个数可以指定,那后面共享服务进程的个数怎么指定呢?这个好像可以通过修改shared_servers来实现,又好像听说oracle服务器会自己维护。

SQL> alter system set dispatchers='(des=(address=(protocol=tcp)(host=mypc)(port=5000)))(connections=1000)(dispatchers=2)';

提示修改成功,我们的共享服务器模式就配置成功了。下面就是应用了。
例如在客户端配置tnsnames.ora

orcl_mypc_shared=
(DESCRIPTION=
  (ADDRESS=(PROTOCOL=tcp)(HOST=1.1.1.1)(PORT=1521))
  (CONNECT_DATA=
     (SERVICE_NAME=sales.us.acme.com)
     (SERVER=shared)))
则用此字符串连接就会使用共享服务器模式


当然也可以使用专用模式
orcl_mypc_dedicated=
(DESCRIPTION=
  (ADDRESS=(PROTOCOL=tcp)(HOST=1.1.1.1)(PORT=1521))
  (CONNECT_DATA=
     (SERVICE_NAME=sales.us.acme.com)
     (SERVER=dedicated)))


使用plsql developer连接服务器下篇再说

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值