oracle共享服务器模式

简介: oracle 响应客户端请求有两种方式: 1 专有连接:用一个服务器进程响应一个客户端请求 2 共享连接:用一个分派器(dispatcher)响应一个客户端请求,服务器端有多个服务器进程,共享处理所有分派器的请求; 两种连接方式的优缺点 1 对于连接数不...

oracle 响应客户端请求有两种方式:
1 专有连接:用一个服务器进程响应一个客户端请求
2 共享连接:用一个分派器(dispatcher)响应一个客户端请求,服务器端有多个服务器进程,共享处理所有分派器的请求;
两种连接方式的优缺点
1 对于连接数不多的应用,适宜用专有连接,客户的请求响应及时;
2 对于连接数较大的应用,适宜用共享连接,充分利用系统资源
后台作业和RMAN操作必须使用专有连接;
配置共享服务器连接
既可以在参数文件内进行静态配置,可以动态修改;
共享服务器配置的初始化参数
■ SHARED_SERVERS: 初始化启动的服务器进程数和保留的最小服务器进程数;如果使用共享连接,这个参数是必配的;
■ MAX_SHARED_SERVERS: 最大并发的共享服务器进程数
■ SHARED_SERVER_SESSIONS: 可并发处理的最大共享用户会话数,超过此数值的用户会话将使用专有连接
■ DISPATCHERS: 共享连接的分派器数量
■ MAX_DISPATCHERS: 可同时并发的共享连接的最大的分派器数量,此参数目前可忽略;
■ CIRCUITS: 可用的虚拟回路数(Specifies the total number of virtual circuits that are available for inbound and outbound network sessions)
配置共享服务器连接
1 静态参数文件中SHARED_SERVERS大于0既可。其他参数不是必要的。
2 使用ALTER SYSTEM语句设置SHARED_SERVERS为一大于0值,如:
ALTER SYSTEM SET SHARED_SERVERS = 5;
设置SHARED_SERVERS数值
一般而言,可以按一个服务器响应10个连接进行计算;
实际的共享服务器进程可以动态增加,SHARED_SERVERS的数值应该设置为实际所需要的最小值;
设置MAX_SHARED_SERVERS以限制共享服务器进程数;
可以动态修改MAX_SHARED_SERVERS以允许更多的服务器进程数,或者动态修改SHARED_SERVERS为一个大于MAX_SHARED_SERVERS的数值以允许更多的服务器进程数;
设置SHARED_SERVERS数值
Number of dispatchers =
CEIL ( max. concurrent sessions / connections for each dispatcher )

例如:
每进程能支持970个连接
TCP/IP连接最多有4000个会话
安全(TCP/IP with SSL)最多有2,500个会话
则用于TCP/IP协议的DISPATCHERS可设为5,CELL(4000 / 970), 用于安全TCP/IP协议的dispatchers 可设为3,CELL(2500 / 970:
DISPATCHERS=’(PROT=tcp)(DISP=5)’, ‘(PROT-tcps)(DISP=3)’
强制特定的IP使用DISPATCH
DISPATCHERS=”(ADDRESS=(PROTOCOL=TCP)(HOST=144.25.16.201))(DISPATCHERS=2)”
这将产生两个DISPATCH监听特定的IP
强制DISPATCH使用特定端口
DISPATCHERS=”(ADDRESS=(PROTOCOL=TCP)(PORT=5000))”
DISPATCHERS=”(ADDRESS=(PROTOCOL=TCP)(PORT=5001))”
修改DISPATCH数量
DISPATCH不可以自动地动态变化。须使用ALTER SYSTEM命令进行修改。
MAX_DISPATCHERS可以设定可使用的最大DISPATCH数;
察看DISPATCH的负载性能,可查询如下视图
■ VQUEUEVDISPATCHER
■ VDISPATCHERRATEDISPATCH使ALTERSYSTEMDISPATCHERS=(PROT=tcp)(DISP=2),(PROT=tcps)(DISP=2)TCPDISPATCH3TCPS1ALTERSYSTEMSETDISPATCHERS=(INDEX=0)(DISP=3),(INDEX=1)(DISP=1);ALTERSYSTEMSETDISPATCHERS=(PROT=tcp)(DISP=3),(PROTtcps)(DISP=1);TCPDISPATCH3DISPATCHTCPS2DISPATCH退dispatchDISPATCHVDISPATCHER_CONFIG
当修改一个DISPATCH的DESCRIPTION, ADDRESS, PROTOCOL, CONNECTIONS,TICKS, MULTIPLEX, and POOL属性后,修改后的设置不能立即生效,需要强制性地杀掉现在的DISPATCH进程
关闭DISPATCH进程
1 确定要关闭的进程
SELECT NAME, NETWORK FROM V$DISPATCHER;
2 ALTER SYSTEM SHUTDOWN IMMEDIATE ‘D002’(DISPATCH NAME);

关闭共享服务连接
1 设置SHARED_SERVERS=0;
2 关闭DISPATCH
ALTER SYSTEM SET DISPATCHERS = ”;

监控
View Description
VDISPATCHERDISPATCHDISPATCHVDISPATCHER_CONFIG 提供DISPATCH的配置信息
VDISPATCHERRATEDISPATCHRATEVQUEUE 提供共享服务器队列信息.
VSHAREDSERVER.VCIRCUIT 提供用户通过DISPATCH连接到数据库的虚拟回路信息(virtual circuits)
V$SHARED_SERVER_MONITOR 提供共享服务器的优化信息

目录
相关文章
|
4月前
|
存储 运维 Oracle
服务器数据恢复—光纤共享存储互斥出现问题的数据恢复案例
两台SOLARIS系统(SPARC平台)的服务器通过光纤交换机共享同一个存储作为CLUSTER使用。正常情况下只有A服务器工作。如果A服务器发生故障宕机,可将A服务器关机,开启B服务器接管。但由于配置不当导致共享存储互斥出现问题。 管理员进行运维检查时发现B服务器连接了一块未知磁盘。由于B服务器并未启用,处于闲置状态,所以管理员也将这块磁盘当作闲置的,于是在B服务器上将磁盘的某个分区做了newfs。没想到这块磁盘就是那个共享存储,执行操作没有多长时间A服务器就开始报警并宕机。
|
9天前
|
存储 Oracle 关系型数据库
服务器数据恢复—华为S5300存储Oracle数据库恢复案例
服务器存储数据恢复环境: 华为S5300存储中有12块FC硬盘,其中11块硬盘作为数据盘组建了一组RAID5阵列,剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用,存放的数据主要是Oracle数据库。 服务器存储故障: RAID5阵列中1块硬盘出现故障离线,热备盘自动激活开始同步数据,在同步数据的过程中又一块硬盘离线,RAID5阵列瘫痪,上层LUN无法使用。
|
2月前
|
消息中间件 分布式计算 监控
大数据-78 Kafka 集群模式 集群的应用场景与Kafka集群的搭建 三台云服务器
大数据-78 Kafka 集群模式 集群的应用场景与Kafka集群的搭建 三台云服务器
81 6
|
1月前
|
存储 Oracle 关系型数据库
oracle服务器存储过程中调用http
通过配置权限、创建和调用存储过程,您可以在Oracle数据库中使用UTL_HTTP包发起HTTP请求。这使得Oracle存储过程可以与外部HTTP服务进行交互,从而实现更复杂的数据处理和集成。在实际应用中,根据具体需求调整请求类型和错误处理逻辑,以确保系统的稳定性和可靠性。
50 0
|
2月前
|
SQL 存储 数据管理
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
61 2
|
2月前
|
存储 Unix 数据挖掘
服务器数据恢复—SAN LUN映射出错导致文件系统共享冲突的数据恢复案例
服务器数据恢复环境: SAN光纤网络环境,存储由一组6块硬盘组建的RAID6阵列构成,划分为若干LUN,MAP到跑不同业务的SUN SOLARIS操作系统服务器上。 服务器故障&分析: 因为业务需要,用户在该光纤存储环境中新增一台SUN SOLARIS操作系统服务器。将存储中的某个LUN映射到新增的服务器上,但是映射的这个卷之前已经MAP到SOLARIS生产系统上的某个LUN上了。因为未及时察觉这个问题,新增服务器已经对该LUN进行部分初始化操作。 在SOLARIS操作系统层面磁盘报错,重启后卷无法挂载。联系SUN工程师检测后,执行了fsck操作。操作完成后虽然文件系统可以挂上,但是发现大量
|
3月前
|
设计模式 数据库连接 PHP
PHP中的设计模式:如何提高代码的可维护性与扩展性在软件开发领域,PHP 是一种广泛使用的服务器端脚本语言。随着项目规模的扩大和复杂性的增加,保持代码的可维护性和可扩展性变得越来越重要。本文将探讨 PHP 中的设计模式,并通过实例展示如何应用这些模式来提高代码质量。
设计模式是经过验证的解决软件设计问题的方法。它们不是具体的代码,而是一种编码和设计经验的总结。在PHP开发中,合理地使用设计模式可以显著提高代码的可维护性、复用性和扩展性。本文将介绍几种常见的设计模式,包括单例模式、工厂模式和观察者模式,并通过具体的例子展示如何在PHP项目中应用这些模式。
|
3月前
|
存储 Oracle 关系型数据库
Oracle同一台服务器创建多个数据库
【8月更文挑战第30天】在 Oracle 中,可在同一服务器上创建多个数据库。首先确保已安装 Oracle 软件并具有足够资源,然后使用 DBCA 工具按步骤创建,包括选择模板、配置存储及字符集等。重复此过程可创建多个数据库,需确保名称、SID 和存储位置唯一。创建后,可通过 Oracle Enterprise Manager 进行管理,注意服务器资源分配与规划。
163 10
|
3月前
|
Ubuntu Oracle 关系型数据库
Oracle VM VirtualBox之Ubuntu 22.04LTS双网卡网络模式配置
这篇文章是关于如何在Oracle VM VirtualBox中配置Ubuntu 22.04LTS虚拟机双网卡网络模式的详细指南,包括VirtualBox网络概述、双网卡网络模式的配置步骤以及Ubuntu系统网络配置。
319 3
|
3月前
|
存储 Unix 数据挖掘
服务器数据恢复—SAN环境下LUN Mapping出错导致文件系统共享冲突的数据恢复案例
服务器数据恢复环境: SAN环境下一台存储设备中有一组由6块硬盘组建的RAID6磁盘阵列,划分若干LUN,MAP到不同业务的SOLARIS操作系统服务器上。 服务器故障: 用户新增了一台服务器,将存储中的某个LUN映射到新增加的这台服务器上。这个映射的LUN其实之前已经MAP到其他SOLARIS操作系统的服务器上了。由于没有及时发现问题,新增加的这台服务器已经对此LUN做了初始化操作,磁盘报错,重启后发现卷无法挂载。

热门文章

最新文章

推荐镜像

更多