搜尋

Oracle Rac 介绍

Jun 07, 2016 pm 03:51 PM
oraclerac什麼介紹傳說

一 名词解释: 什么是RAC 传说中的RAC,做为我们本文的主角,其全称是Real Application Cluster,官方的中译是真正应用集群,听起来和叫起来都很别扭是不是,我们还是就叫它RAC吧。RAC并非是个新技术,其前身叫OPS(Oracle Parallel Server),从9i开始才改名

一  名词解释:

什么是RAC
传说中的RAC,做为我们本文的主角,其全称是Real Application Cluster,官方的中译是真正应用集群,听起来和叫起来都很别扭是不是,我们还是就叫它RAC吧。RAC并非是个新技术,其前身叫OPS(Oracle Parallel Server),从9i开始才改名叫RAC(回头有空俺再写篇blog跟大伙数道数道rac的前世今生),这属于oracle的老把戏了,它的不少产品都是边做边改名,比如Oracle Data Guard在9i之前叫做Standby,对于这些知识大家不妨也多了解了解,如果你的就业经历足够长,俺觉着你就一定能理解俺所说的,有时候资深并不代表着技术有多牛,而是人家待的年头够久,对于历史那是相当熟悉啊,所以资深也能理解成资历的嘛,对于后来者而言怎样快速获得资历呢,黑黑,你也去熟悉历史呗(en,俺晓得,俺又跑题鸟)~~~

RAC不仅仅是个组件,就我理解,它更应该被称之为一种体系,因为它不是单单由某项特性组成,而是一堆特性应用的集合。该体系实现了多个实例同时访问和管理同一数据库,多个实例可以存在于不同节点,也可以在相同的节点上(从提升性能的角度来看,并不推荐这样),彼此通过内网连接交换数据,并且能够自动平衡负载,如果其中某个节点发生故障,RAC能够通过后台的监控进程将连接自动切换到另外一个或多个节点上,从而实现应用的无缝切换,对实例的高可用提供保护。

因此,我们也能够得出结论,RAC保护的是实例,而并非数据,这点一定要明确(对数据进行冗余的特性在oracle中叫Data guard,详细请见:一步一步学Dataguard)。

什么是CRS
Cluster Ready Service是oracle集群件的软件架构,提到架构我们一般都会下意识觉着,哇这东西真牛啊,事实也确实如此,CRS可以说是RAC环境稳定运行的基础,但平常呢你又感受不到它的存在。做为框架,它有多个组成部分,包括一系列的进程和一堆的服务,后面我们将会一一了解,总之它不是一个在战斗,它不是一个人。。。

什么是CVU
全称Cluster Verification Utility,CVU是oracle专门为RAC提供的一个检查工具,目的是期望在安装前就你的安装环境进行检查,看看软硬件环境是否已就绪,该工具功能非常强大,通过搭配不同参数可以检查安装RAC所需环境的方方面面(后文详绪)。不过,该工具所显示的检查结果也仅供参考,具体情况需要具体分析,并非说其检查报错,你就不能成功配置RAC了。另外由于oracle自身的一些bug等原因,可能也会造成CVU给出错误的信息。

什么是OUI
说起OUI大家应该都不会陌生,其全称是Oracle Universal Installer,就是图形化的安装助手,这个就不多说什么了。

什么是ASM
做为oracle当前主推的一种存储特性,在oracle官方文档中处处都能看到Oracle recommends using ASM之类的字眼,其实这并不奇怪,就像刚生完孩子的母亲抱着孩子出门遛弯,逢人就想跟人说:看看我家孩子多漂亮的心理是一样的,毕竟是人家自己的东西,如果它自己都不推广还能靠谁去推广呢,与何况这里头还有着更重要的经济利益和长远战略,oracle不仅建议你存储用asm,它还有n多别的建议,比如管理用em,存储用asm,表空间管理用local,undo管理用auto等等。扯远了,回到主题,啥是ASM呢,其全称是:Automatic Storage Management。可以把它理解成oracle自己设计的,用软件实现的,用于存储的黑匣子。

什么是OMF
Oracle Manage File 的简写,一般在创建数据库-指定数据文件路径时你会见到它的身影。一旦你选择了该种路径方式,在创建表空间,控制文件,日志文件时就不需要指定位置和文件名了,Oracle会根据一些初始化参数的设置自动分配和命名,其通常与ASM搭配使用。

什么是OCR
Oracle Cluster Registry用于保存集群和数据库的配置信息,做为CRS的关键组件,,因此,OCR必须保存于共享磁盘(但不能是ASM,asm毕竟只是一个软件实现的集群文件系统,在读取集群信息时,可能连asm实例都还没启动呢),大概需要100M左右的空间。

什么是Voting Disk
用于保存集群中各节点信息并确保各节点的一至性状态,同样也必须保存于共享磁盘(也不能是asm),大概需要20M左右的空间。

什么是VIP
即虚拟IP,Oracle推荐客户端连接时通过指定的虚拟IP连接,这也是Oracle10g新推出的一个特性。其本质目的是为了实现应用的无停顿(虽然目前还是有点小问题,但离目标已经非常接近)。用户连接虚IP,这个IP并非绑定于网卡,而是由oracle进程管理,一旦某个用户连接的虚IP所在实例宕机,oracle会自动将该IP映射到状态正常的实例,这样就不会影响到用户对数据库的访问,也无须用户修改应用。



二 优劣势分析

不同的集群产品都有自己的特点,RAC的特点包括如下几点:    ·双机并行。RAC是一种并行模式,并不是传统的主备模式。也就是说,RAC集群的所有成员都可以同时接收客户端的请求。
    ·高可用性。RAC是Oracle数据库产品高可用性的解决方案,能够保证在集群中只要有一个节点存活,就能正常对外提供服务。
    ·易伸缩性。RAC可以非常容易地添加、删除节点,以满足系统自身的调整。
    ·低成本。能使用较低廉的服务器来实现高可用性、高吞吐量的集群环境,这要比通过对某台高端服务器增加硬件实现高可用性、高吞吐量花费的成本低很多。
    ·高吞吐量。随着节点数的增加,整个RAC的吞吐量也在不断增长。
    下面详细讨论这五大特点。
    一、双机并行
    RAC是一种充分利用服务器资源的高可用性实现方案,RAC的并行模式实现方式与传统的双机热备实现方式截然不同,图1-4是两者的比较。
    如图1-4所示,两个节点在传统的双机热备环境中,始终有一台机器作为备用机,只有当主节点出现问题的时候才会切换到备用机上;如果主机一直没有出现问 题,那么备用机始终处于空闲状态,这在资源的利用上以及成本方面都是巨大的浪费。但RAC是一种并行模式的架构,也就是说,两个节点的集群节点间是一种并 行运行的关系,当一台机器出现问题,请求会自动转发到另一台机器,没有任何一台机器作为备用机一直不被使用,这样就充分利用了服务器资源。同时,传统的双 机热备构架在出现问题时,常常需要数分钟的切换时间,而RAC在出现问题时,针对存在的会话只需要数十秒的时间就可以完成失败切换过程,对新会话的创建不 会产生影响,在切换时间上也有比较大的优势。

详述<a1

Oracle RAC的五大优势及其劣势" href="/picshow/index1154817.shtml">
▲图1-4 双机热备与RAC并行模式对比
  二、高可用性
  RAC是Oracle数据库高可用性解决方案。高可用性包含两部分的内容:首先是在这种解决方案下要确保数据不丢失,这是最基础的也是必须要保证的;其次是确保不停机,使Oracle数据库一直维持在正常的运行状态,避免停机给客户带来的损失,这是讨论最多的内容。
  停机一般分为两类,计划停机和非计划停机。所谓计划停机是有计划地安排节点或者系统的停机,一般在Oracle升 级、系统维护或者硬件维护的情况下会出现。非计划停机就是在非人为计划的情况下突然停机,这种情况一般是在Oracle bug、系统故障、硬件故障或人为操作失败的时候出现。
  在没有较高花费的情况下,想实现系统100%的不停机几乎是不可能的。表1-1列出了特定百分比高可用性比率运行停机的时间,详细记录了每种高可用性比率每年、每月、每周可以出现最大的停机时间。

Oracle Rac 介绍

  通常情况下,以每月停机时间来计算对应的可用性比率。根据系统的重要性情况,应该为系统设定合理的可用性比率。
  集群最大的优势在于它的高可用性,通过使用RAC可以在一定程度上避免因为硬件或软件故障引起的数据丢失和非计划停机,并在一定程度上减少或排除计划停机时间。这是很多客户选择RAC的最直接原因。
  RAC中包含了非常多的高可用特性,主要包含如下几点:
  ·实现节点间的负载均衡。
  ·实现失败切换的功能。
  ·通过Service组件来控制客户端的访问路径。
  ·集群软件能够自动化管理各个资源,并且有定时的节点状态检测机制,能自动对一些失败的进程以及心跳检测失败的节点进行重启,使其重新恢复到正常的运行状态。
  在Oracle 11gR2版本中,Clusterware得到了改善,提供了更高的可用性。例如,大量新的基于代理的监控系统用于监控所有的资源。这些代理使用更少的资 源执行更频繁的检查,即更快速的失败扫描和更短的恢复时间。在Oracle监听的例子中,平均失败扫描时间从5分钟减少到30秒,同时,检查间隔从每10 分钟减少到1分钟。另外,Clusterware的“Out-of-Place Upgrade”等特性也减少了软件维护需要的停机时间。


  三、易伸缩性
  RAC为需要重新规划的应用提供了易扩展性。为了在系统初始阶段保持较低的成本,避免造成不必要的浪费,集群可以按照标准硬件配置,选择适当的服务器资源、存储资源来搭建数据库环境。当系统需要更多的处理能力或者需要增加存储时,通过添加另一台服务器或存储设备到集群中,能够在不停机的情况下获得水平的扩展。在一个集群中, Clusterware和RAC支持多达100个集群节点。
  当某个集群的处理能力过剩,另一个集群的处理能力不够时,可以从处理能力过剩的集群移动一个节点到处理能力不够的集 群中。这样能够充分利用服务器资源,节约成本。11gR2版本中推出了网格即插即用(Grid Plug and Play,GPnP),可以实现节点的快速添加。
  四、低成本
  通过多台普通的PC服务器组成一个集群,可以提高集群的处理能力,这样要比采用一台高性能的服务器的成本低很多。如 果想提高系统的处理能力,给集群添加节点比为高性能服务器添加硬件要容易得多。另外,使用集群还能动态地移除节点,更加充分地利用管理者掌握的所有服务器 资源,从服务器整体使用上降低了服务器的采购成本。越来越多的企业愿意将集群解决方案应用到他们的系统中,以降低成本,提高系统的可用性。
  五、高吞吐量
  RAC是由多台服务器构成的逻辑主体,比单台数据库服务器能接收更多的客户端请求。这在要求高吞吐量的系统中,能够 得到非常明显的体现。在RAC的架构中,多个实例分布在多个服务器上,能同时打开同一个数据库,而每个实例能够接收相等数量的客户端请求,这样,随着服务 器的增加,吞吐量也在不断地增加。
  在以上讨论的特点中,高可用性是RAC最大的特点。
  RAC存在的问题
  虽然RAC有非常多的优点,但由于部署一套RAC会涉及服务器、存储设备、HBA卡、操作系统等多方面的技术,且从实现上要比单实例数据库更复杂,对硬件设备的稳定性、设备之间以及设备与操作系统的兼容性上要求也更高,Oracle的bug也会造成RAC运行出现问题。所以,从实际的运行情况来看,RAC要比单实例的数据库存在更多的问题,问题的原因也各不相同。RAC存在的问题主要体现在稳定性和高性能方面,下面讨论这两个问题。
  一、稳定性
  数据库的稳定运行是系统稳定运行的基础和前提,数据库的运行依赖于操作系统、服务器、存储设备等软硬件设备的运行情况。
  由于各种硬件设备、操作系统的厂商不同,有时候在兼容性上会存在问题,即使同一个厂商的服务器,由于驱动、固件版本的不同也可能导致硬件出现问题以及与其他设备的兼容性问题。同时,由于RAC本身也存在不少bug,很多部署的RAC环境缺乏在上线前对环境的检查和测试,导致在运行过程中出现一系列不稳定的情况,这样高可用性并没有得到充分的体现。
  由此来看,稳定的硬件环境加上稳定的RAC版本,决定着RAC运行的稳定性。数据库工程师与硬件工程师在安装配置前大量的环境检查、验证,以及部署后的大量测试工作都是非常重要的。
  二、高性能
  高性能也是大部分从单机环境迁移到RAC环境比较头疼的问题,RAC并不是高性能的解决方案。在目前普遍使用千兆网 络的硬件环境中,很多时候系统的数据库从原来的单机迁移至RAC环境,系统的性能反而下降。在这种情况下,数据库管理员应该根据RAC的特点对系统调整提 出合理的建议,经过合理的设计、开发,使用RAC是能够提高系统的处理性能的。
  以上两个问题是需要特别注意的。另外,与硬件工程师、系统开发人员进行良好的沟通,以及对系统合理的设计是保证RAC稳定运行和高性能运行的前提。


陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
您什麼時候應該使用複合索引與多個單列索引?您什麼時候應該使用複合索引與多個單列索引?Apr 11, 2025 am 12:06 AM

在數據庫優化中,應根據查詢需求選擇索引策略:1.當查詢涉及多個列且條件順序固定時,使用複合索引;2.當查詢涉及多個列但條件順序不固定時,使用多個單列索引。複合索引適用於優化多列查詢,單列索引則適合單列查詢。

如何識別和優化MySQL中的慢速查詢? (慢查詢日誌,performance_schema)如何識別和優化MySQL中的慢速查詢? (慢查詢日誌,performance_schema)Apr 10, 2025 am 09:36 AM

要優化MySQL慢查詢,需使用slowquerylog和performance_schema:1.啟用slowquerylog並設置閾值,記錄慢查詢;2.利用performance_schema分析查詢執行細節,找出性能瓶頸並優化。

MySQL和SQL:開發人員的基本技能MySQL和SQL:開發人員的基本技能Apr 10, 2025 am 09:30 AM

MySQL和SQL是開發者必備技能。 1.MySQL是開源的關係型數據庫管理系統,SQL是用於管理和操作數據庫的標準語言。 2.MySQL通過高效的數據存儲和檢索功能支持多種存儲引擎,SQL通過簡單語句完成複雜數據操作。 3.使用示例包括基本查詢和高級查詢,如按條件過濾和排序。 4.常見錯誤包括語法錯誤和性能問題,可通過檢查SQL語句和使用EXPLAIN命令優化。 5.性能優化技巧包括使用索引、避免全表掃描、優化JOIN操作和提升代碼可讀性。

描述MySQL異步主奴隸複製過程。描述MySQL異步主奴隸複製過程。Apr 10, 2025 am 09:30 AM

MySQL異步主從復制通過binlog實現數據同步,提升讀性能和高可用性。 1)主服務器記錄變更到binlog;2)從服務器通過I/O線程讀取binlog;3)從服務器的SQL線程應用binlog同步數據。

mysql:簡單的概念,用於輕鬆學習mysql:簡單的概念,用於輕鬆學習Apr 10, 2025 am 09:29 AM

MySQL是一個開源的關係型數據庫管理系統。 1)創建數據庫和表:使用CREATEDATABASE和CREATETABLE命令。 2)基本操作:INSERT、UPDATE、DELETE和SELECT。 3)高級操作:JOIN、子查詢和事務處理。 4)調試技巧:檢查語法、數據類型和權限。 5)優化建議:使用索引、避免SELECT*和使用事務。

MySQL:數據庫的用戶友好介紹MySQL:數據庫的用戶友好介紹Apr 10, 2025 am 09:27 AM

MySQL的安裝和基本操作包括:1.下載並安裝MySQL,設置根用戶密碼;2.使用SQL命令創建數據庫和表,如CREATEDATABASE和CREATETABLE;3.執行CRUD操作,使用INSERT,SELECT,UPDATE,DELETE命令;4.創建索引和存儲過程以優化性能和實現複雜邏輯。通過這些步驟,你可以從零開始構建和管理MySQL數據庫。

InnoDB緩衝池如何工作,為什麼對性能至關重要?InnoDB緩衝池如何工作,為什麼對性能至關重要?Apr 09, 2025 am 12:12 AM

InnoDBBufferPool通過將數據和索引頁加載到內存中來提升MySQL數據庫的性能。 1)數據頁加載到BufferPool中,減少磁盤I/O。 2)臟頁被標記並定期刷新到磁盤。 3)LRU算法管理數據頁淘汰。 4)預讀機制提前加載可能需要的數據頁。

MySQL:初學者的數據管理易用性MySQL:初學者的數據管理易用性Apr 09, 2025 am 12:07 AM

MySQL適合初學者使用,因為它安裝簡單、功能強大且易於管理數據。 1.安裝和配置簡單,適用於多種操作系統。 2.支持基本操作如創建數據庫和表、插入、查詢、更新和刪除數據。 3.提供高級功能如JOIN操作和子查詢。 4.可以通過索引、查詢優化和分錶分區來提升性能。 5.支持備份、恢復和安全措施,確保數據的安全和一致性。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境