我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Oracle的专用数据库和共享数据库区别

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Oracle的专用数据库和共享数据库区别

专用服务器进程(Dedicated server)


对于专用服务器配置,在登录时,Oracle总会创建一个新的进程,这个服务器进程会在会话生存期中专门这个连接服务。对于每个会话,都会出现一个新的专用服务器,会话与专用服务器之间存在一对一的映射。按照定义,这个专用服务器不是实例的一部分用户进程和服务器进程是分开的。每个用户进程都有自己的服务器进程。
用户进程和服务器进程可在不同的机器上运行,以利用分布式处理的优势。
用户进程和服务器进程的比率是1 比1。
即使用户进程不发出数据库请求,专用服务器也存在,只是保持空闲状态。
何时使用专用服务器
提交批作业(预计很少有或没有空闲时间)
以sysdba 身份连接以启动、关闭或执行恢复
要请求使用专用服务器,必须在tnsnames.ora 文件内的Oracle Net TNS 连接字符串中
包含SERVER=DEDICATED 子句。
注:对于大多数平台来说,如果您的机器有足够的内存支持专用服务器,则应使用专用服
务器。这样性能可能更好些。
但也有例外,例如Windows NT,在该系统中,由于共享服务器体系结构的异步特性,使
用Oracle Shared Server 配置性能可能会有所提高。
如何连接专用服务器
在客户端服务器中的tnsnames.ora文件里进行设置:
dedicated =(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.52)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = itpux)
(server = dedicated)
)





共享服务器(shared server),正式的说法是多线程服务器(Multi-Threaded Server)或MTS。如果采用这种方式,就不会对每条用户连接创建另外的线程或新的UNIX 进程
Oracle Shared Server 的优点
减少针对某一例程的进程数目
增加可服务的用户数
实现负载平衡
减少空闲服务器进程的数目
减少内存占用和系统开销
如何连接共享服务器
不能使用共享服务器执行某些类型的数据库工作:
数据库管理
备份和恢复操作
批处理和批量加载操作
数据仓库操作
共享服务器具有以下一些缺点
一般我们以oracle默认的专用服务器方式就行了,没必要使用共享服务器模式。一个是我们是使用中间件(如:weblogic)去连oracle的,中间件本身有连接池机制,另外就是oracle的这个共享服务器方式也做的不够好了,有诸多缺点。
1)共享服务器的代码路径比专用服务器长,所以它天生就比专用服务器慢。
2)存在人为死锁的可能,因为它是串行的,只要一个连接阻塞,则该服务器进程上的所有用户都被阻塞,并且极可能死锁。 ITPUX 技术网(http://www.itpux.com),中国最专业最全面的 IT 行业技术网站。
3)存在独占事务的可能,因为如果一个会话的事务运行时间过长,它独占共享资源,其它用户只能等待,而专用服务器,每个客户端是一个会话。
4)共享服务器模式限制了某些数据库特性,例如:不能单独启动和关闭实例,不能进行介质恢复,不能使用Log Miner,并且SQL_TRACE没有意义(因为是共享而不是当前会话的)。


怎么知道oracle当前是 DEDICATED SERVER 还是 SHARED SERVER?
最简单的一个方法是查看监听: lsnrctl service

[grid@udevasm:/home/grid]$lsnrctl service
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 15-JUL-2017 13:07:31
Copyright (c) 1991, 2013, Oracle.  All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
  Instance "+ASM", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
Service "db01" has 1 instance(s).
  Instance "udevasm", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:8 refused:0 state:ready
         LOCAL SERVER
Service "udevasm" has 1 instance(s).
  Instance "udevasm", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:8 refused:0 state:ready
         LOCAL SERVER
Service "udevasmXDB" has 1 instance(s).
  Instance "udevasm", status READY, has 1 handler(s) for this service...
    Handler(s):
      "D000" established:0 refused:0 current:0 max:1022 state:ready
         DISPATCHER <machine: udevasm, pid: 2469>
         (ADDRESS=(PROTOCOL=tcp)(HOST=udevasm)(PORT=10275))
The command completed successfully


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Oracle的专用数据库和共享数据库区别

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

oracle数据库和mysql的区别

oracle数据库和mysql都是基于关系模型的数据库,但oracle在兼容性、可扩展性、数据类型和安全性方面更胜一筹;而mysql则侧重速度和灵活性,更适合小到中等规模的数据集。①oracle提供广泛的数据类型,②提供高级安全功能,③适合
oracle数据库和mysql的区别
2024-05-10

oracle数据库与sql数据库的区别

oracle 数据库和 sql 数据库的主要区别如下:所有权:oracle 数据库归 oracle 公司所有,而 sql 数据库归 microsoft 公司所有。编程语言:oracle 数据库使用 pl/sql,而 sql 数据库使用 t-
oracle数据库与sql数据库的区别
2024-05-10

oracle数据库和mysql数据库有什么区别

Oracle数据库和MySQL数据库是两种不同的关系型数据库管理系统,它们之间有很多区别,包括以下几点:开发者和使用者:Oracle数据库是由Oracle公司开发的,被广泛应用于大型企业和高端应用场景;而MySQL是由瑞典MySQL AB公
oracle数据库和mysql数据库有什么区别
2024-03-02

pg数据库和oracle数据库有什么区别

数据模型:PostgreSQL 使用了一种基于 SQL 标准的关系型数据模型,而 Oracle 数据库也是基于 SQL 标准的关系型数据库,但它也支持面向对象的数据模型。开源性:PostgreSQL 是一个开源数据库管理系统,可以免费使用和
pg数据库和oracle数据库有什么区别
2024-04-19

mysql数据库和oracle数据库有什么区别

MySQL和Oracle是两种常用的关系型数据库管理系统,它们之间有很多区别,主要包括以下几点:开发公司:MySQL由瑞典MySQL AB公司开发,后被Sun收购,现在属于Oracle公司;而Oracle数据库由美国Oracle公司开发。开
mysql数据库和oracle数据库有什么区别
2024-04-22

redis数据库和mysql数据库的区别

差异化对比:redis 是基于内存的键值存储,数据访问速度极快,通常用于缓存等场景;mysql 是关系型数据库,数据存储在硬盘上,适用于需要持久化存储和强大查询功能的场景。Redis 和 MySQL 数据库的区别Redis 和 MySQL
redis数据库和mysql数据库的区别
2024-04-19

oracle数据库名和实例名区别

oracle数据库名唯一标识数据库,存储于数据库目录,可创建多个数据库,每个数据库有唯一的数据库名;而实例名唯一标识数据库的运行实例,在操作系统中创建,每个数据库可有多个实例,每个实例有唯一的实例名。一个实例可托管多个数据库,而一个数据库只
oracle数据库名和实例名区别
2024-05-11

Android使用AIDL共享Room数据库

什么是AIDL: AIDL(Android Interface Definition Language),翻译成中文就是安卓接口定义语言的意思,是用于定义服务端和客户端通信接口的一种描述语言。其主要作用是IPC(Android进程间通讯),
2022-06-06

云数据库和本地数据库有哪些区别

云数据库和本地数据库的区别有:1、云数据库计算性能高,本地数据库需要云服务器的云盘规划架构,实现集群版的难度较高;2、云数据库提供白名单、安全组、专有网络隔离、自动主备复制、数据备份、日志备份等功能,安全性高,本地数据库难以实现计算和存储分
2023-02-08

postgreSQL数据库to_timestamp和to_date的区别

1 SELECT  to_timestamp("2020-02-27 12:12:12","yyyy-MM-dd hh24:mi:ss") ;2 SELECT  to_date("2020-02-27 12:12:12","yyyy-MM-dd hh24:mi
postgreSQL数据库to_timestamp和to_date的区别
2020-07-29

阿里云数据库与数据仓库的区别

阿里云数据库与数据仓库是两种不同的数据存储方式,它们在功能、应用场景和性能上有所不同。本文将对两者进行详细比较,帮助读者更好地理解两者之间的区别。正文:一、功能上的区别阿里云数据库是一种关系型数据库,主要用于存储和管理结构化数据。它提供了丰富的SQL查询功能,支持数据的插入、更新和删除操作,同时也支持事务处理和数
阿里云数据库与数据仓库的区别
2023-11-18

编程热搜

目录