国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項超值服

開通VIP
Oracle RAC入門和提高
Oracle Real Application Server,真正應(yīng)用集群,簡稱Oracle RAC ,是Oracle的并行集群,位于不同服務(wù)器系統(tǒng)的Oracle實例同時訪問同一個Oracle數(shù)據(jù)庫,節(jié)點(diǎn)之間通過私有網(wǎng)絡(luò)進(jìn)行通信,所有的控制文件、聯(lián)機(jī)日志和數(shù)據(jù)文件存放在共享的設(shè)備上,能夠被集群中的所有節(jié)點(diǎn)同時讀寫。其系統(tǒng)架構(gòu)如下圖:

  RAC提供的好處包括:

  (1)多節(jié)點(diǎn)負(fù)載均衡;

  (2)提供高可用:故障容錯和無縫切換功能,將硬件和軟件錯誤造成的影響最小化,下表是RAC與傳統(tǒng)的雙機(jī)熱備方式切換時間的對比:

  (3)通過并行執(zhí)行技術(shù)提高事務(wù)響應(yīng)時間----通常用于數(shù)據(jù)分析系統(tǒng);

  (4)通過橫向擴(kuò)展提高每秒交易數(shù)和連接數(shù) ;----通常對于聯(lián)機(jī)事務(wù)系統(tǒng);

  (5)節(jié)約硬件成本,可以用多個廉價PC服務(wù)器代替昂貴的小型機(jī)或大型機(jī),同時節(jié)約相應(yīng)維護(hù)成本;

  (6)可擴(kuò)展性好,可以方便添加刪除節(jié)點(diǎn),擴(kuò)展硬件資源;

  RAC的缺點(diǎn)有:

  相對單機(jī),管理更復(fù)雜,要求更高;

  在系統(tǒng)規(guī)劃設(shè)計較差時性能甚至不如單節(jié)點(diǎn);

  可能會增加軟件成本(如果使用高配置的pc服務(wù)器,Oracle一般按照CPU個數(shù)收費(fèi))

  在Oracle9i之前,RAC的名稱是OPS (Oracle parallel Server)。RAC 與 OPS 之間的一個較大區(qū)別是,RAC采用了Cache Fusion(高速緩存合并)技術(shù)。在 OPS 中,節(jié)點(diǎn)間的數(shù)據(jù)請求需要先將數(shù)據(jù)寫入磁盤,然后發(fā)出請求的節(jié)點(diǎn)才可以讀取該數(shù)據(jù)。使用Cache fusion時,RAC的各個節(jié)點(diǎn)的數(shù)據(jù)緩沖區(qū)通過高速、低延遲的內(nèi)部網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)塊的傳輸。

  Oracle RAC在中國各行各業(yè)使用都比較廣泛,包括通信移動、金融服務(wù)、社會保障和電子商務(wù)等, 據(jù)Oracle統(tǒng)計,2007財年中國有500多家企業(yè)使用Oracle實時應(yīng)用集群,考慮到未登記信息,實際數(shù)字更高于這一數(shù)字。典型的用戶包括:中彩在線/OLTP/4節(jié)點(diǎn)/10gR2/AIX5.3、淘寶/DataWarehouse/4節(jié)點(diǎn)/10gR2/RHEL4、北京社保/6節(jié)點(diǎn)/HP_Alpha/ MA8000、建行證券系統(tǒng)/2節(jié)點(diǎn)/IBM_P595/EMC_DMX3、上海電力/2節(jié)點(diǎn)/Alpha_GS160、廣東移動、山東網(wǎng)通等。

  Oracle RAC/Clusterware的結(jié)構(gòu)和組件

  一、RAC主要組件, 軟硬件兩部分

  (1) 服務(wù)器 >= 2

  (2)操作系統(tǒng),推薦使用Oracle認(rèn)證的系統(tǒng);版本不要太老,也不要太新

  (3) CPU/內(nèi)存根據(jù)業(yè)務(wù)需要,內(nèi)存至少1G

  (4) 本地磁盤空間,>=30G

  (5)網(wǎng)卡>=2 ,推薦4個以上千兆網(wǎng)卡

  (6) 私有以太網(wǎng)絡(luò),推薦千兆交換機(jī)以上

  (7) HBA卡 ,如果是SAN,推薦2個冗余HBA

  (8) 共享存儲設(shè)備,推薦SAN設(shè)備

  (9) 存儲管理, ASM/Cluster LV/裸分區(qū)/CFS,不推薦用OCFS,卷管理軟件、多路徑軟件等

  (10) 第三方集群軟件: 可選

  (11) Oracle Clusterware 軟件

  (12) Oracle RDBMS 軟件

  二、Clusterware主要進(jìn)程

  (1)crsd: 負(fù)責(zé)管理集群的高可用操作。管理的crs資源包括數(shù)據(jù)庫、實例、監(jiān)聽、虛擬IP,ons,gds或者其他,操作包括啟動、關(guān)閉、監(jiān)控及故障切換。改進(jìn)程由root用戶管理和啟動。crsd如果有故障會導(dǎo)致系統(tǒng)重啟。

  (2)cssd,管理各節(jié)點(diǎn)的關(guān)系,用于節(jié)點(diǎn)間通信,節(jié)點(diǎn)在加入或離開集群時通知集群。該進(jìn)程由oracle用戶運(yùn)行管理。發(fā)生故障時cssd也會自動重啟系統(tǒng)。

  (3)oprocd – 集群進(jìn)程管理 —Process monitor for the cluster. 用于保護(hù)共享數(shù)據(jù)IO fencing。

  僅在沒有使用vendor的集群軟件狀態(tài)下運(yùn)行

  (4)evmd :事件檢測進(jìn)程,由oracle用戶運(yùn)行管理

  三、Clusterware使用的共享設(shè)備

  (1) Oracle Cluster Registry(OCR):記錄集群的配置信息;

  (2) Voting disk : 即投票盤,保存節(jié)點(diǎn)的成員信息,當(dāng)配置多個投票盤的時候個數(shù)必須為奇數(shù),每個節(jié)點(diǎn)必須同時能夠連接半數(shù)以上的投票盤才能夠存活;

  四、安裝路徑的選擇

    注:

  (1)在Oracle RAC中,軟件不建議安裝在共享文件系統(tǒng)上;包括CRS_HOME和ORACLE_HOME,尤其是CRS軟件,推薦安裝在本地文件系統(tǒng)中,這樣在進(jìn)行軟件升級,以及安裝patch和patchset的時候可以使用滾動升級(rolling upgrade)的方式,減少計劃當(dāng)機(jī)時間。另外如果軟件安裝在共享文件系統(tǒng)也會增加單一故障點(diǎn)。

  (2)如果使用ASM存儲,需要為asm單獨(dú)安裝ORACLE軟件,獨(dú)立的ORACLE_HOME,易于管理和維護(hù),比如當(dāng)遇到asm的bug需要安裝補(bǔ)丁時,就不會影響RDBMS文件和軟件。

  (3)在Oracle 11gR2中將新增存儲選項:acfs (Oracle ASM Cluster File System)

第三方集群

  在Oracle9i中,除了Windows和Linux,在安裝RAC之前必須先安裝vendor clusterware,即第三方集群,包括IBM的HACMP, HP的ServiceGuard for oracle RAC, Sun cluster,Veritas SFRAC等,這一類的集群軟件為Oracle RAC提供了下面的功能:

  (1)共享的邏輯卷管理或者集群文件系統(tǒng)用于存放數(shù)據(jù)文件;

  (2)提供了統(tǒng)一的集群的成員組管理;

  (3)使用更健壯的SCSI-3 PGR機(jī)制來防止心跳故障(即裂腦split brain)導(dǎo)致的數(shù)據(jù)損壞,這種功能一般叫做IO fencing;

  (4)提供效率更高的、更低延遲的心跳網(wǎng)絡(luò)用于cache fusion,可以相對減少TCP/IP的開銷,包括:

  HP SGeRAC: HMP (Hyper Messaging Protocol),

  Sun Cluster: RSM (Remote Shared Memory),

  Veritas SFRAC: LLT (low-latency transport),

  Compac True Cluster: RDG (reliable data grams);

  通常如果要使用第三方集群的心跳協(xié)議,需要將$ORACLE_HOME/lib/libskgxpX.so文件替換為第三方集群

  軟件提供的libskgxpX.so文件(其中X代表Oracle版本號9/10/11),skgxp 是System Kernel Generic Interface Inter-Process Communications的縮寫,是oracle開放的一個應(yīng)用接口,用于傳輸GCS和GES 的數(shù)據(jù)。Oracle自帶的libskgxp文件定義的傳輸協(xié)議是UDP/IP。

  (5)提供擴(kuò)展的容災(zāi)方案,例如campus cluster/metro cluster/extended RAC;如下圖, 以Veritas的SFRAC為例,它提供兩種Oracle Extended RAC方案,方案一是使用Veritas Volume Manager對底層陣列進(jìn)行鏡像,提供同城容災(zāi)級別的實時數(shù)據(jù)保護(hù);方案二使用GCO/VVR對數(shù)據(jù)庫進(jìn)行數(shù)據(jù)復(fù)制,可以實現(xiàn)距離更遠(yuǎn)、超過10km廣域網(wǎng)的容災(zāi);

  (6)Veritas SFRAC 還提供了以下特性:

  補(bǔ)充的Oracle ODM,可以使Oracle同時擁有文件系統(tǒng)的易管理和裸設(shè)備的性能;

  標(biāo)準(zhǔn)的多路徑軟件(DMP),不需要再安裝其他軟件就可支持絕大多數(shù)磁盤陣列,在異構(gòu)SAN環(huán)境中有更好的兼容性;

  從Oracle10g起,Oracle提供了自己的集群軟件,叫Oracle clusterware簡稱CRS,這個軟件是安裝oracle rac的前提,而上述第三方集群則成了安裝的可選項 。同時提供了另外一個新特性叫做ASM,可以用于RAC下的共享磁盤設(shè)備的管理,還實現(xiàn)了數(shù)據(jù)文件的條帶化和鏡像,以提高性能和安全性 (S.A.M.E: stripe and mirror everything ) ,不再依賴第三方存儲軟件來搭建RAC系統(tǒng)。

  那么Oracle是如何識別第三方集群的呢?

  在安裝完第三方集群后,會在特定目錄下生成Oracle RAC接口文件,這個文件的作用就是上面的第二點(diǎn)功能:集群成員管理信息(cluster membership 簡稱CM)。在HPUX下該文件是/opt/nmapi/nmapi2/lib/pa20_64,在AIX/Solaris/Linux下這個文件是/opt/ORCLcluster/lib/libskgxn2.so 。

  當(dāng)安裝CRS的的檢查階段,就會檢測是否有該文件,如果有的話,在安裝CRS過程中生成一個軟連接文件,文件名是ligskgxn2.so,指向上面的libskgxn2.so或pa20_64文件,這個軟連接的位置在CRS_HOME/lib/目錄;如果沒有第三方集群,那么CRS安裝過程中生成自己的libskgxn2.so文件。換句話說,在有第三方集群存在的情況下,CRS的集群成員信息是來自于第三方集群,兩套集群的成員信息保持一致和同步;沒有第三方集群情況時,CRS自己管理成員信息。

  通過查詢$CRS_HOME/log/hostname/cssd/ocssd.log可以看到css識別到的第三方集群,下面的例子分別是HACMP、SFRAC、SunCluster、ServiceGuide :

  [CSSD]2008-05-27 15:09:43.456 [1029] >TRACE: clssnm_skgxninit: initialized skgxn version (2/0/IBM AIX skgxn)

  [CSSD]2008-12-30 21:44:56.172 [1029] >TRACE: clssnm_skgxninit: initialized skgxn version (2/0/Veritas Cluster Server MM

  [CSSD]2007-08-10 02:19:39.572 [3] >TRACE: clssnm_skgxninit: initialized skgxn version (2/2/Oracle Solaris UDLM)

  [CSSD]2006-09-29 18:57:53.323 [5] >TRACE: clssnm_skgxninit: initialized skgxn version (2/0/Hewlett-Packard SKGXN 2.0)

  在9i/8i中沒有css/crs,該信息可以在后臺進(jìn)程lmon的trace文件中得到(在bdump中);

  在安裝Oracle 9i RAC/8i OPS的過程中,Oracle識別集群方法類似。

  在多個平臺上,如果兩個節(jié)點(diǎn)沒有正確鏈接libskgxn2文件,可能會導(dǎo)致第二個實例無法mount或出現(xiàn)ORA-600錯誤。

  Oracle支持的RAC環(huán)境

  因為Oracle RAC本身比較復(fù)雜,在安裝和管理中可能會遇到各種問題,涉及到OS、RDBMS、Cluster軟件和網(wǎng)絡(luò)、主機(jī)、存儲等硬件,為了避免不必要的問題發(fā)生,在安裝之前,我們需要確認(rèn)安裝環(huán)境是否滿足要求,包括軟件和硬件兩方面,尤其是Vendor clusterware和OS 的版本的兼容性需要注意,可以從metalink中得到最新的Oracle官方認(rèn)證信息:登陸Metalink.oracle.com 選擇 Certify,選擇by product,選擇real application server,選擇對應(yīng)平臺就可以得到。下面列出一些關(guān)于硬件和平臺支持的常見問題:

  官方不支持的:Vmware, Sun LDOM ,Solaris Local Container/Zones

  官方支持的: IBM LPAR, IBM VIOS(Virtual IO Server), Solaris Global Containers

  RHEL GFS , ISCSI,

  私有網(wǎng)絡(luò)(心跳線)的支持: 不支持使用交叉線,支持 Infiniband RDS (10gR2之后)

  異構(gòu)環(huán)境:支持不同的硬件、但相同的軟件(OS/Oracle)組成的集群,不支持32位與64位系統(tǒng)間的集群

  目前支持的NFS的server包括:

  EMC Celerra

  Fujitsu Filer NR1000 Series

  IBM N Series

  NetApp FAS, F, G Series

  Pillar Data Systems Axiom 500

  Sun StorageTek 5000 Series

Oracle Clusterware的心跳

  Oracle clusterware 使用兩種心跳設(shè)備來驗證成員的狀態(tài),保證集群的完整性;一是對voting disk的心跳,ocssd進(jìn)程每秒向votedisk寫入一條心跳信息;二是節(jié)點(diǎn)間的私有以太網(wǎng)的心跳,兩種心跳機(jī)制都有一個對應(yīng)的超時時間,分別叫做misscount和disktimeout:

  misscount 用于定義節(jié)點(diǎn)間心跳通信的超時,單位為秒;

  disktimeout ,默認(rèn)200秒,定義css進(jìn)程與vote disk連接的超時時間;

  reboottime ,發(fā)生裂腦并且一個節(jié)點(diǎn)被踢出后,這個節(jié)點(diǎn)將在reboottime的時間內(nèi)重啟;默認(rèn)是3秒;

  其中misscount默認(rèn)值見下表

  用下面的命令查看上述參數(shù)的實際值:1. # crsctl get css misscount

  2. # grep misscount $CRS_HOME/log/hostname/cssd/ocssd.log

  [CSSD]2008-11-27 22:29:42.397 [1] >TRACE: clssnmInitNMInfo: misscount set to 600

  在下面兩種情況發(fā)生時,css會踢出節(jié)點(diǎn)來保證數(shù)據(jù)的完整,:

  (1) Private Network IO time > misscount,會發(fā)生split brain即裂腦現(xiàn)象,產(chǎn)生多個“子集群”(subcluster) ,這些子集群進(jìn)行投票來選擇哪個存活,踢出節(jié)點(diǎn)的原則按照下面的原則:

  節(jié)點(diǎn)數(shù)目不一致的,節(jié)點(diǎn)數(shù)多的subcluster存活;節(jié)點(diǎn)數(shù)相同的,node ID小的節(jié)點(diǎn)存活。

  (2) Vote Disk IO Time > disktimeout ,踢出節(jié)點(diǎn)原則如下:失去半數(shù)以上vote disk連接的節(jié)點(diǎn)將在reboottime的時間內(nèi)重啟;例如有5個vote disk,當(dāng)由于網(wǎng)絡(luò)或者存儲原因某個節(jié)點(diǎn)與其中>=3個vote disk連接超時時,該節(jié)點(diǎn)就會重啟。當(dāng)一個或者兩個vote disk損壞時則不會影響集群的運(yùn)行。

  可以手工修改這三個參數(shù)的值,單位都是秒:(謹(jǐn)慎使用)

  $CRS_HOME/bin/crsctl set css misscount

  $CRS_HOME/bin/crsctl set css reboottime[-force]

  $CRS_HOME/bin/crsctl set css disktimeout[-force]

  或者重新設(shè)置成默認(rèn)值:crsctl unset css misscount

  Clusterware的私有網(wǎng)絡(luò)

  在Oracle 10g/11g中,Oracle的私有網(wǎng)絡(luò)(private network)包括clusterware的私有網(wǎng)絡(luò)和數(shù)據(jù)庫實例的私有網(wǎng)絡(luò):

  clusterware的私有網(wǎng)絡(luò)主要包括css數(shù)據(jù)的傳送,即用一種特殊的ping命令來檢測其他機(jī)器的狀態(tài);

  數(shù)據(jù)庫實例的私有網(wǎng)絡(luò),包括RDMS和ASM的,用于cache fusion(GCS/GES)數(shù)據(jù)的傳輸。

  當(dāng)我們只使用一個私有網(wǎng)卡的時,同時傳送上面兩類的數(shù)據(jù)。如果我們在安裝時指定了兩個私有網(wǎng)卡,首先使用如下面$CRS_HOME/bin/oifcfg getif命令來得到所有網(wǎng)絡(luò)接口列表,這些信息保存在ocr中:

  # oifcfg getif

  en0 10.200.56.0 global public

  en3 192.168.3.0 global cluster_interconnect

  en5 192.168.5.0 global cluster_interconnect

  情況會有所不同,clusterware的私有網(wǎng)絡(luò),目前(10g/11g)只能使用一個網(wǎng)絡(luò)接口,對應(yīng)于/etc/hosts中定義的private hostname的那個網(wǎng)卡,可以通過查看ocssd的log來確定:

  當(dāng)/etc/hosts 中定義private hostname為192.168.3.233時看到 :

  [ CSSD]2009-01-16 17:34:12.406 [1029] >TRACE: clssgmPeerListener: Listening on (ADDRESS=(PROTOCOL=tcp)(DEV=12) (HOST=192.168.3.233)(PORT=45527))

  這個是與其他節(jié)點(diǎn)css進(jìn)行通信的信息:

  [ CSSD]2009-01-16 17:36:27.463 [1029] >TRACE: clssgmConnectToNode: node 2 clsc (ADDRESS=(PROTOCOL=tcp)(DEV=12) (HOST=192.168.3.234)(PORT=37732)) - size 64 ver 1

  當(dāng)/etc/hosts 中定義private hostname為192.168.5.233時,css使用了另外一個網(wǎng)絡(luò):

  [ CSSD]2009-01-16 18:59:56.411 [1029] >TRACE: clssgmPeerListener: Listening on (ADDRESS=(PROTOCOL=tcp)(DEV=12) (HOST=192.168.5.233)(PORT=50415))

  Oracle實例的私有網(wǎng)絡(luò)

  Oracle實例的心跳網(wǎng)絡(luò)使用方式的優(yōu)先級從高到低如下:

  (1) 如果使用了第三方集群的IPC,替換了對應(yīng)$ORACLE_HOME/lib/libskgxnX.so文件,那么數(shù)據(jù)庫實例的cache fusion會使用對應(yīng)的網(wǎng)絡(luò)協(xié)議,而忽略ocr中和數(shù)據(jù)庫初始化參數(shù)中cluster_interconnects的配置,下面的例子當(dāng)中就使用了VCSIPC,可以從對應(yīng)的alert log中驗證:

  db_name = r10g

  open_cursors = 300

  pga_aggregate_target = 1237319680

  Fri Mar 13 14:00:35 2009

  Oracle instance running with ODM: Veritas 6.0 ODM Library, Version 1.1

  cluster interconnect IPC version:

  VERITAS IPC 5.1.0.0 15:16:24 Feb 12 2009

  IPC Vendor 86 proto 76

  Version 1.0

  PMON started with pid=2, OS id=4399196

  DIAG started with pid=3, OS id=3936288

  (2) 如果沒有使用第三方IPC,則優(yōu)先使用數(shù)據(jù)庫初始化參數(shù)的cluster_interconnects配置,這個參數(shù)的格式為if1:if2:...:ifn,可以不同于crs的私有網(wǎng)絡(luò),需要注意的是,該參數(shù)不支持多個網(wǎng)卡的故障切換;

  (3) 沒有上面兩個配置,數(shù)據(jù)庫會使用oifcfg列出的心跳的網(wǎng)絡(luò),在對應(yīng)的告警日志中可以得到:

  Interface type 1 en6 192.168.61.0 configured from OCR for use as a cluster interconnect

  Interface type 1 en0 10.182.0.0 configured from OCR for use as a public interface

  . . . .

  Cluster communication is configured to use the following interface(s) for this instance

  192.168.61.0

  (4) 沒有1和2的配置,并且oifcfg也沒有配置cluster_interconnect,則數(shù)據(jù)庫會使用共有網(wǎng)絡(luò)進(jìn)行心跳信息的傳輸,這種配置其實是配置失敗的情況,數(shù)據(jù)庫雖然能夠啟動,但急需DBA修正,在告警日志中可以看到:

  WARNING: No cluster interconnect has been specified. Depending on

  the communication driver configured Oracle cluster traffic

  may be directed to the public interface of this machine.

  Oracle recommends that RAC clustered databases be configured

  with a private interconnect for enhanced security and

  performance.

  對于一個已經(jīng)有的系統(tǒng),可以用下面幾種方法確認(rèn)數(shù)據(jù)庫實例的心跳配置,包括網(wǎng)卡名稱,IP地址,使用的網(wǎng)絡(luò)協(xié)議:

  (1) 最簡單的方法:可以在數(shù)據(jù)庫的后臺報警日志中得到。具體參見上面列出的告警日志;

  (2) 使用oradebug ;

  SQL> oradebug setmypid

  SQL> oradebug ipc

  SQL> oradebug tracefile_name

  找到對應(yīng)trace文件的這一行:socket no 10 IP 10.0.0.1 UDP 49197

  (3) 從數(shù)據(jù)字典中得到(V$CLUSTER_INTERCONNECTS 和 V$CONFIGURED_INTERCONNECTS),或查詢x$ksxpia

  SQL> SELECT * FROM V$CLUSTER_INTERCONNECTS; ----Oracle 11g 開始支持此試圖

  NAME IP_ADDRESS IS_ SOURCE

  ------------------------------ ---------------- --- -------------------------------

  en3 192.168.2.31 NO Oracle Cluster Repository

  en5 192.168.3.231 NO Oracle Cluster Repository

  SQL> SELECT * FROM V$CONFIGURED_INTERCONNECTS;

  NAME IP_ADDRESS IS_ SOURCE

  ------------------------------ ---------------- --- -------------------------------

  en3 192.168.2.31 NO Oracle Cluster Repository

  en5 192.168.3.231 NO Oracle Cluster Repository

  en0 10.200.59.231 YES Oracle Cluster Repository

  SQL> select * from x$ksxpia ;

  ADDR INDX INST_ID PUB_KSXPIA PICKED_KSXPIA NAME_KSXPIA IP_KSXPIA

  ---------------- ---------- ---------- ---------- --------------- --------------- ----------------

  00000001104AAF28 0 1 N OCR en6 192.168.61.121

  00000001104AAF28 1 1 Y OCR en0 10.182.6.211

  為了避免心跳網(wǎng)絡(luò)成為系統(tǒng)的單一故障點(diǎn),簡單地我們可以使用操作系統(tǒng)綁定的網(wǎng)卡來作為Oracle的心跳網(wǎng)絡(luò),以AIX為例,我們可以使用etherchannel技術(shù),假設(shè)系統(tǒng)中有ent0/1/2/3四塊網(wǎng)卡,我們綁定2和3作為心跳:

  #mkdev -c adapter -s pseudo -t ibm_ech -a adapter_names='ent2,ent3' ## 將生成網(wǎng)卡設(shè)備ent4

  #/usr/lib/methods/defif

  #lsdev -Cc adapter | grep ent

  #lsattr -El ent4

  #ifconfig en4 inet 192.168.3.231 netmask 255.255.255.0 up

  在Solaris上可以使用dladm來創(chuàng)建鏈路聚合:

  # dladm create-aggr -d bge2 -d bge3 1

  # ifconfig aggr1 plumb 192.168.3.231 netmask 255.255.255.0 up

  # dladm show-aggr

  # ifconfig -a

  同樣在HPUX和Linux對應(yīng)的技術(shù)分別叫APA和bonding。

  UDP私有網(wǎng)絡(luò)的調(diào)優(yōu)

  當(dāng)使用UDP作為數(shù)據(jù)庫實例間cashe fusion的通信協(xié)議時,在操作系統(tǒng)上需要調(diào)整相關(guān)參數(shù),以提高UDP傳輸效率,并在較大數(shù)據(jù)時避免出現(xiàn)超出OS限制的錯誤:

  (1) UDP數(shù)據(jù)包發(fā)送緩沖區(qū):大小通常設(shè)置要大于(db_block_size * db_multiblock_read_count )+4k,

  (2) UDP數(shù)據(jù)包接收緩沖區(qū):大小通常設(shè)置10倍發(fā)送緩沖區(qū);

  (3) UDP緩沖區(qū)最大值:設(shè)置盡量大(通常大于2M)并一定要大于前兩個值;

  各個平臺對應(yīng)查看和修改命令如下:

  Solaris 查看 ndd /dev/udp udp_xmit_hiwat udp_recv_hiwat udp_max_buf ;

  修改 ndd -set /dev/udp udp_xmit_hiwat 262144

  ndd -set /dev/udp udp_recv_hiwat 262144

  ndd -set /dev/udp udp_max_buf 2621440

  AIX 查看 no -a |egrep “udp_|tcp_|sb_max”

  修改 no -p -o udp_sendspace=262144

  no -p -o udp_recvspace=1310720

  no -p -o tcp_sendspace=262144

  no -p -o tcp_recvspace=262144

  no -p -o sb_max=2621440

  Linux 查看 文件/etc/sysctl.conf

  修改 sysctl -w net.core.rmem_max=2621440

  sysctl -w net.core.wmem_max=2621440

  sysctl -w net.core.rmem_default=262144

  sysctl -w net.core.wmem_default=262144

  HP-UX 不需要

  HP TRU64 查看 /sbin/sysconfig -q udp

  修改: 編輯文件/etc/sysconfigtab

  inet: udp_recvspace = 65536

  udp_sendspace = 65536

  Windows 不需要

常見安裝、管理錯誤

  1. 安裝CRS失敗,或執(zhí)行root.sh報錯,可能原因:

  (1) 節(jié)點(diǎn)間的時間不同步,解決方法:使用ntp服務(wù)

  (2) Linux下啟用了默認(rèn)的防火墻,導(dǎo)致執(zhí)行root.sh報錯:

  Failure at final check of Oracle CRS stack.

  10

  解決方法:禁用iptables ,注釋/etc/pam.d/other ;

  # service iptables stop; # chkconfig iptables off.

  (3) 裸設(shè)備的權(quán)限問題,可能因為操作系統(tǒng)重新啟動后權(quán)限發(fā)生變化。(RHEL4)

  解決方法: 把 chown oracle:dba /dev/raw/raw* 命令加入到/etc/rc.local中,每次開機(jī)自動執(zhí)行

  或者修改文件/etc/udev/permissions.d/50-udev.permissions

  第113行raw/*:root:disk:0660 改成 raw/*:oracle:dba:0660

  (4) Solaris使用了包括cylinder 0的磁盤分區(qū)來存儲OCR或者vote disk。

  解決辦法:相關(guān)分區(qū)不應(yīng)該包括cylinder 0,可以從1開始。

  (5) 使用的公網(wǎng)IP地址不可路由,

  解決方法:添加相關(guān)網(wǎng)關(guān)

  (6) 在/etc/hosts 中沒有l(wèi)oopback地址,即127.0.0.1 localhost

  (7) 主機(jī)名含有大些字母、減號或者下劃線等特殊字符;

  (8) HPUX中oracle不要使用gnu的bash,修改使用默認(rèn)shell;

  (9) 檢查操作系統(tǒng)、第三方集群是否是oracle官方支持的,是否需要補(bǔ)丁,比如在AIX5.3+HACMP上安裝

  Oracle 10g/11g RAC,oslevel就需要06及以上;

  (10) AIX平臺,需要將共享設(shè)備的reserve_policy (reserve_lock) 屬性修改為no_reserve(no);

  (11) 所有節(jié)點(diǎn)看到的OCR和vote設(shè)備的路徑名應(yīng)該一致,如果不一致,可以用軟連接解決;

  (12) 心跳設(shè)備問題或者ocr/votedisk 訪問問題,unix/linux查看有無/tmp/crsctl.*文件,得到錯誤信息;

  (13) 在CRS舊的安裝的環(huán)境中重新安裝失敗

  解決方法: dd清除ocr和vote disk,并使用下面語句清理舊的crs配置文件

  rm -rf /usr/tmp/.oracle /var/tmp/.oracle /tmp/.oracle /etc/oracle/* /var/opt/oracle/*

  rm -rf /etc/init.cssd /etc/init.crs* /etc/init.evmd /etc/init.d/init.cssd /etc/init.d/init.crs

  rm -rf /etc/init.d/init.crsd /etc/init.d/init.evmd /etc/rc3.d/K96init.crs /etc/rc3.d/S96init.crs

  rm -rf /etc/rc.d/rc2.d/K96init.crs /etc/rc.d/rc2.d/S96init.crs

  2 客戶端有時候報錯:

  ORA-12545: Connect failed because target host or object does not exist

  ORA-12545: 因目標(biāo)主機(jī)或?qū)ο蟛淮嬖? 連接失敗

  解決方法:設(shè)置local_listener初始化參數(shù)

  3 如果選擇節(jié)點(diǎn)界面出不來。

  (1)HACMP環(huán)境中需要檢查oracle 用戶必須在 hagsuser組里.

  (2)如果是hacmp5.4,需要打Oracle補(bǔ)丁6718715;

  (3)可以使用集群配置文件cluster CONFIGURATION FILE ,內(nèi)容模板如下:

  MyCluster

  rac01 rac01-priv rac01-vip

  rac02 rac02-priv rac02-vip

  rac03 rac03-priv rac03-vip

  rac04 rac04-priv rac04-vip

  4. AIX上數(shù)據(jù)庫啟動報錯

  ora-27504 IPC error creating OSD context

  ora-27300 OS system dependent operation:sendmsg failed with status:59

  ora-27301 OS failure message:Message too long

  ora-27302 failure occurred at:sskgxpsnd1

  原因:沒有設(shè)置網(wǎng)絡(luò)參數(shù)udp_recvspace/udp_sendspace

  5. Windows平臺,ORA-600 [kccsbck_first]

  解決方法:關(guān)閉Media Sense(媒體感知)

  6. 系統(tǒng)循環(huán)重啟:

  可能是CRS導(dǎo)致,如果因為crs,首先設(shè)置 crsctl disable crs 來禁止oracle crs的自動啟動。

  查看OS、crsd和cssd的對應(yīng)日志,看/tmp/下是否有crs文件 (ls -lrt /tmp/crsctl*),確定crs失敗原因。

  7. 第二個節(jié)點(diǎn)的數(shù)據(jù)實例無法mount,掛起或者報錯,

  原因1:使用了vendor clusterware ,libskgxn2.so文件鏈接錯誤,

  解決方法:比較兩個節(jié)點(diǎn)的ORACLE_HOME/lib/libskgxn2和CRS_HOME/lib/libskgxn2*都是否相同,

  如果不同需要重新link

  原因2:任何平臺Oracle 9i,沒有設(shè)置網(wǎng)絡(luò)參數(shù)udp參數(shù)

  導(dǎo)致udp_sendspace或者udp_recvspace小于 db_block_size * db_file_multiblock_read_count

  解決方法:設(shè)置對應(yīng)參數(shù),如AIX上設(shè)置udp_recvspace = 65536 udp_sendspace = 65536

  原因3:AIX/HACMP/Oracle9i,在hacmp中定義了service IP

  解決方法:在初始化參數(shù)中定義cluster_interconnects

  原因4:任何平臺,設(shè)置了錯誤的cluster_interconnects

  解決方法:檢查并糾正此參數(shù),

  8. 建庫時不能識別裸設(shè)備;

  原因1:Oracle,10.2.0.3 ,很多平臺(比如aix和linux)有rawutl相關(guān)bug,

  解決辦法:還原10.2.0.1中的rawutl工具,該程序在 $ORACLE_HOME/bin目錄中。

  原因2:Oracle9i,AIX平臺,需要設(shè)置環(huán)境變量export PGSD_SUBSYS=grpsvcs

  9. evm資源自動報錯oac_init:2: Could not connect to server, clsc retcode = 9

  解決方法:關(guān)閉 “UDP ICMP rejections”

  /etc/rc.d/init.d/iptables stop ;chkconfig iptables off

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
利用Oracle CRS搭建應(yīng)用的高可用集群-1
循序漸進(jìn):Oracle 11.2 RAC集群進(jìn)程的初始化與啟動過程
關(guān)于oracle的RAC
3 安裝配置oracle集群和RAC - anbaisheng的個人空間 - ITPUB個...
Oracle-----RAC重啟步驟 RAC管理(crs_stat、crsctl、srvctl)
Oracle 11g數(shù)據(jù)庫RAC安裝手冊(下)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服