日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

深入了解Oracle ASM(一):基础概念

發(fā)布時間:2023/12/4 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 深入了解Oracle ASM(一):基础概念 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
ASM基礎(chǔ)概念 ? 任何轉(zhuǎn)載請注明源地址,否則追究法律責任!:http://www.askmaclean.com/archives/know-oracle-asm.html ? 相關(guān)文章鏈接: Asm Instance Parameter Best Practice 為什么RHEL 6上沒有ASMLIB? Unix上如何查看文件名開頭為”+asm”的TRACE文件 asm_power_limit對IO的影響 針對11.2 RAC丟失OCR和Votedisk所在ASM Diskgroup的恢復(fù)手段 10g ASM lost disk log 11gR2 RAC ASM啟動揭秘 在11gR2 RAC中修改ASM DISK Path磁盤路徑 在Linux 6上使用UDEV解決RAC ASM存儲設(shè)備名問題 Script:找出ASM中的Spfile參數(shù)文件 如何診斷ASMLIB故障 Script:收集ASM診斷信息 Comparation between ASM note [ID 373242.1] and note [ID 452924.1] Why ASMLIB and why not? ASM file metadata operation等待事件 幾個關(guān)于oracle 11g ASM的問題 利用UDEV服務(wù)解決RAC ASM存儲設(shè)備名 Discover Your Missed ASM Disks Oracle內(nèi)部視圖X$KFFXP Fixed X$ Tables in ASM 了解AMDU工具生成的MAP文件 使用AMDU工具從無法MOUNT的DISKGROUP中抽取數(shù)據(jù)文件 ? Automatic Storage Management是Oracle 在版本10g中率先(對比其他RDBMS)提出的數(shù)據(jù)庫存儲自動解決方案,在版本11g中得到進一步升華。ASM提供了數(shù)據(jù)庫管理所需要的一個簡單、有效的存儲管理接口,該接口實現(xiàn)了跨服務(wù)器和存儲平臺。 ASM是文件系統(tǒng)filesystem和volume manager卷管理軟件的一體化,專門為Oracle的數(shù)據(jù)庫文件鎖設(shè)計的; ASM在保證如文件系統(tǒng)般管理簡單的基礎(chǔ)上提供高性能的異步Async IO。ASM的引入提高了數(shù)據(jù)庫的可擴展容量,同時節(jié)約了DBA的時間,使其能夠更敏捷、更高效地管理一個流動性較大的數(shù)據(jù)庫環(huán)境。 ? ASM的出現(xiàn)是為RDBMS管理文件存儲
  • 注意ASM不會替代RDBMS去實施IO讀寫,很多對這一點存在誤解,認為RDBMS發(fā)送IO request給ASM,ASM去做真正的IO操作,這是錯誤的。
  • 真正的IO還是由RDBMS進程去實施,和不用ASM的裸設(shè)備一樣
  • 因此ASM不是IO的中間層,也就不存在因為ASM而出現(xiàn)所謂的IO瓶頸
  • 對于ASM而言LUN DISK可以是裸設(shè)備也可以直接是塊設(shè)備(10.2.0.2以后)
  • 適合存放在ASM中的文件類型包括:數(shù)據(jù)文件datafile、控制文件controlfile、重做日志redolog、歸檔日志archivelog、閃回日志flashback log、spfile、RMAN備份以及block tracking file、datapump文件
  • 從11gR2開始,ASM引入了ACFS特性可以存放任何類型的文件; 但是ACFS不支持存放數(shù)據(jù)文件
? ASM基礎(chǔ)概念:
  • ASM的最小存儲單位是一個"allocation unit"(AU),通常為1MB,在Exadata上推薦為4MB
  • ASM的核心是存儲文件
  • 文件被劃分為多個文件片,稱之為"extent"
  • 11g之前extent的大小總是為一個AU,11g之后一個extent可以是1 or 8 or 64個AU
  • ASM使用file extent map維護文件extent的位置
  • ASM在LUN DISK的頭部header維護其元數(shù)據(jù),而非數(shù)據(jù)字典
  • 同時RDBMS DB會在shared pool中緩存file extent map,當server process處理IO時使用
  • 因為ASM instance使用類似于普通RDBMS的原理的instance/crash recovery,所以ASM instance奔潰后總是能復(fù)原的。
ASM存儲以diskgroups的概念呈現(xiàn):
  • Diskgroup DG對RDBMS實例可見,例如一個DATA DG,對于RDBMS來說就是以'+DATA'表示的一個存儲點, 可以在該DG上創(chuàng)建一個tablespace,例如: create tablespace ONASM datafile '+DATA' size 10M。
  • Diskgroup下面是一個或者多個failure group (FG)
  • FG被定義為一組Disk
  • Disk在這里可以是裸的物理卷、磁盤分區(qū)、代表某個磁盤陣列的LUN,亦或者是LVM或者NAS設(shè)備
  • 多個FG中的disk不應(yīng)當具備相同的單點故障,否則ASM的冗余無效
? ASM所提供的高可用性:
  • ASM提供數(shù)據(jù)鏡像以便從磁盤失敗中恢復(fù)
  • 用戶可以選擇EXTERNAL、NORMAL、HIGH三種冗余鏡像
  • EXTERNAL即ASM本身不做鏡像,而依賴于底層存儲陣列資深實現(xiàn)鏡像;在External下任何的寫錯誤都會導(dǎo)致Disk Group被強制dismount。在此模式下所有的ASM DISK必須都存在健康,否則Disk Group將無法MOUNT
  • NORMAL 即ASM將為每一個extent創(chuàng)建一個額外的拷貝以便實現(xiàn)冗余;默認情況下所有的文件都會被鏡像,這樣每一個file extent都有2份拷貝。若寫錯誤發(fā)生在2個Disk上且這2個Disk是partners時將導(dǎo)致disk?Disk Group被強制dismount。若發(fā)生失敗的磁盤不是partners則不會引起數(shù)據(jù)丟失和不可用。
  • HIGH 即ASM為每一個extent創(chuàng)建兩個額外的拷貝以便實現(xiàn)更高的冗余。2個互為partners的Disk的失敗不會引起數(shù)據(jù)丟失,當然不能有更多的partners Disk失敗了。
  • 數(shù)據(jù)鏡像依賴于failure group和extent partnering實現(xiàn)。ASM在NORMAL 或 HIGH 冗余度下可以容許丟失一個failure group中所有的磁盤。
? Failure Group鏡像的使用
  • ASM的鏡像并不像RAID 1那樣
  • ASM的鏡像基于文件extent的粒度,extent分布在多個磁盤之間,稱為partner
  • Partner disk會存放在一個或者多個分離的failure group上
  • ASM自動選擇partner并限制其數(shù)量小于10個
  • 若磁盤失敗,則ASM更新其extent map使今后的讀取操作指向剩余的健康partner
  • 在11g中,若某個disk處于offline狀態(tài),則對于文件的變更會被追蹤記錄這樣當disk被重現(xiàn)online時則這些變化得以重新應(yīng)用,前提是offline的時間不超過DISK_REPAIR_TIME所指定的時間(默認為3.6個小時). 這種情況常發(fā)生在存儲控制器故障或者類似的短期磁盤故障:
  • 這種對于文件變更的追蹤基于一個發(fā)生變化的file extent的位圖,該位圖告訴ASM哪些extents需要從健康的partner哪里拷貝至需要修復(fù)的disk,該特性稱之為fast mirror resync
  • 在10g中沒有fast mirror resync特性,若disk出現(xiàn)offline則直接自動被drop掉,不存在允許修復(fù)的周期
  • 對于無法再online的disk,則必須被drop掉; 一個新的disk會被ASM選擇并通過rebalancing 操作拷貝數(shù)據(jù),這些工作是后臺自動完成的。
? 重新平衡Rebalancing
  • Rebalancing是在磁盤之間移動文件extent以實現(xiàn)diskgroup上的IO負載均衡的過程
  • Rebalancing在后臺異步發(fā)生,是可監(jiān)控的
  • 在集群環(huán)境中,一個diskgroup的重平衡只能在一個ASM instance上發(fā)生,不能通過集群多節(jié)點同時處理以加速
  • 當disk被加入或移除時,ASM會自動在后臺開始數(shù)據(jù)重新平衡工作
  • 重平衡的速度和力度可以通過asm_power_limit參數(shù)控制
  • asm_power_limit參數(shù)默認為1,其范圍為0~11(從11.2.0.2開始是0-1024),該參數(shù)控制實施重平衡后臺進程的數(shù)量;Level 0表示不實施重新平衡
  • 在重新平衡過程中IO性能(主要是吞吐量和響應(yīng)時間)可能受到影響,其影響程度取決于存儲本身的能力和重新平衡的力度,默認的asm_powner_limit=1不會造成過度的影響
? 性能方面
  • ASM會通過在DG中條帶化文件extent分布以最大化可用的IO帶寬
  • 有2種可用條帶化寬度:coarse粗糙條帶化大小為1個AU,fine精細條帶化為128K
  • 即便是fine精細條帶化仍采用普通大小的file extent,但是條帶化以更小的片形式循環(huán)式地分布在多個extent上
  • ASM默認不讓RDBMS去讀備用的鏡像拷貝extent,即使這樣請放心IO還是均衡的
  • 默認情況下RDBMS總是去讀取主primary extent,從11.1開始可以通過PREFERRED_READ_FAILURE_GROUP參數(shù)設(shè)置讓本地節(jié)點優(yōu)先讀取某個failure group中的extent; 該特性主要為extended distance RAC設(shè)計,不建議在常規(guī)ASM中使用
? ?其他知識
  • 并非RAC才能使用ASM,單節(jié)點同樣可以從ASM哪里獲得好處
  • 節(jié)點上的一個ASM instance實例可以為多個RDBMS DB實例服務(wù)
  • RAC環(huán)境中的ASM必須也是集群化的,以便能夠協(xié)調(diào)更新元數(shù)據(jù)
  • 從11.2開始,ASM從RDBMS HOME分離出來,而和clusterware一起安裝在GRID HOME下。
? ? Disk Group: Disk Group"磁盤組" 是ASM管理的邏輯概念對象,一個Disk Group由多個ASM disk組成。每一個Disk Group都是子描述的,如同一個標準的文件系統(tǒng)一樣。所有關(guān)于該Diskgroup 空間使用信息的元數(shù)據(jù)均完整地包含在這個磁盤組中。 若ASM可以找到所有屬于該ASM diskgroup的DISK則他不需要任何其他額外的元數(shù)據(jù)。 文件空間從Disk Group中分配。任何一個ASM文件總是完整地包含在一個單獨的Disk Group中。但是,一個Disk Group可能包含了屬于多個數(shù)據(jù)庫的文件,一個單獨的數(shù)據(jù)庫的文件也可以存放在多個不同的Disk Group中。 在大多數(shù)實際的部署中,不會創(chuàng)建太多數(shù)量的Disk Groups,一般在3~4個。 Disk Group提供三種不同的redundancy冗余度,詳見上文。 ? ASM Disk ? 一個ASM Disk是組成Disk Group的基本的持久的存儲。 當一個ASM Disk加入到Disk Group中時,它要么采用管理員指定的ASM Disk Name要么采用系統(tǒng)自動分配的Disk Name。 這不同于OS 給用于訪問該設(shè)備的"藝名"。 ?在一個Cluster集群中, 同一個Disk 可能在不同的節(jié)點上顯示不同的Device Name設(shè)備名,例如在 Node1上的 /dev/sdc ,對應(yīng)于Node2上的/dev/sdd。 ASM Disk必須在所有使用該Disk Group的實例上可用直接磁盤I/O訪問。 實際上對于RDBMS Oracle而言訪問ASM disk和訪問普通的文件并沒有什么不同,除非使用了ASMLIB(ASMLIB不是ASM必須的,再次強調(diào)!)。常規(guī)情況下ASM Disk是OS上可見的LUN的partition,該分區(qū)覆蓋了所有不被操作系統(tǒng)所保留的磁盤的空間。 大多數(shù)操作系統(tǒng)需要保留LUN的第一個block作為分區(qū)表(partition table); 由于ASM總是會寫ASM Disk的第一個塊,所以要保證ASM不會去覆蓋前幾個block上的分區(qū)表(partition table),例如在Solaris上分區(qū)時不要把前幾個柱面劃給partition。LUN可以是簡單的物理JBOD,或者是由高級存儲陣列管理的虛擬LUN。既可以是直連的設(shè)備也可以是SAN。ASM Disk可以是任何被開發(fā)系統(tǒng)調(diào)用所訪問的東西,除了本地文件系統(tǒng)。 甚至于NFS上的文件都可以被當做一個ASM Disk來用,這樣便于喜歡NAS的用戶使用ASM,當然比起NFS來我更建議干脆用ISCSI。 ? 注意雖然可以使用普通logical Volume Manager LVM管理的logical volume作為ASM Disk,但是這并不是推薦組合,除非你想不到其他更好的辦法。 即便你一定要這樣用,但是注意也不要在LVM級別做鏡像和條帶化。 ASM將任何文件以AU大小均勻分布在Disk Group的所有Disk上。每一個ASM Disk均被維護以保持同樣的使用比率。這保證同一個Disk Group中的所有Disk的IO負載基本一致。由于ASM在一個Disk Group中的磁盤上的負載均衡,所以為同一個物理磁盤的不同區(qū)域劃分為2個ASM Disk不會對性能有所影響;而同一個物理磁盤上劃分2個不同分區(qū)置于不同的2個Disk Group則有效。 當ASM Disk Group啟用冗余時單個ASM Disk僅是一個失敗單元。對于該ASM Disk的寫失敗在10g會自動從該Disk Group drop掉該Disk,前提是該Disk的丟失被容許。 ? Allocation Unit 每一個ASM Disk都被劃分為許多個AU allocation units(單個AU 的大小在 1MB ~64MB,注意總是2的次方MB)。而且AU allocation unit也是Disk Group的基本分配單元。一個ASM Disk上的可用空間總是整數(shù)倍個AU。在每一個ASM Disk的頭部均有一個表,該表的每一條記錄代表該ASM Disk上的一個AU。文件的extent指針(pointer)給出了ASM Disk Number磁盤號和AU號,這就描述了該extent的物理位置。由于所有的空間操作都以AU為單位,所以不存在所謂ASM碎片這樣的概念和問題。 一個AU(1M~64M)足夠小,以便一個文件總是要包含很多個AU,這樣就可以分布在很多磁盤上,也不會造成熱點。一個AU又足夠大以便能夠在一個IO操作中訪問它,以獲得更加的吞吐量,也能提供高效的順序訪問。訪問一個AU的時間將更多的消耗在磁盤傳輸速率上而非花在尋找AU頭上。對于Disk Group的重新平衡也是對每一個AU逐次做的。 ? ? ? ? ? 了解ASM后臺進程的作用: ? GMON: ASM Diskgroup監(jiān)控進程 ASMB: ASM后臺網(wǎng)絡(luò)進程 RBAL: ASM reblance master process 重新平衡主進程 ARBx: ??reblance slave process實際實施reblance的后臺進程 MARK: AU resync AU重新同步的指揮家進程 ? 了解ASM前臺進程的作用: ? ASM的client(主要是RDBMS DB和CRSD))在連接ASM實例時會產(chǎn)生前臺進程,前天進程的名字一般為oracle+ASM_<process>_<product> (例如: oracle+ASM_DBW0_DB1)。 ? OCR 特有的前臺進程foreground: oracle+ASM1_ocr ? ? ?ASM相關(guān)的V$和X$視圖 ?
視圖名X$基表名描述
V$ASM_DISKGROUPX$KFGRP實施磁盤發(fā)現(xiàn)disk discovery和列出磁盤組
V$ASM_DISKGROUP_STATX$KFGRP_STAT顯示disk group狀態(tài)
V$ASM_DISKX$KFDSK, X$KFKID實施磁盤發(fā)現(xiàn)disk discovery和列出磁盤以及這些磁盤的使用度量信息
V$ASM_DISK_STATX$KFDSK_STAT,X$KFKID列出磁盤和其使用度量信息
V$ASM_FILEX$KFFIL列出ASM文件也包括了元數(shù)據(jù)信息
V$ASM_ALIASX$KFALS列出了ASM的別名,文件和目錄
V$ASM_TEMPLATEX$KFTMTA列出可用的模板和其屬性
V$ASM_CLIENTX$KFNCL列出鏈接到ASM的DB實例
V$ASM_OPERATIONX$KFGMG列出rebalancing重平衡操作
N/AX$KFKLIB可用的ASMLIB路徑
N/AX$KFDPARTNER列出Disk-partners關(guān)系
N/AX$KFFXP所有ASM文件的extent map
N/AX$KFDAT所有ASM Disk的extent列表
N/AX$KFBH描述ASM cache
N/AX$KFCCEASM block的鏈表
V$ASM_ATTRIBUTE(new in 11g)X$KFENV(new in 11g)Asm屬性,該X$基表還顯示一些隱藏屬性
V$ASM_DISK_IOSTAT(new in 11g)X$KFNSDSKIOST(new in 11g)I/O統(tǒng)計信息
N/AX$KFDFS(new in 11g)
N/AX$KFDDD(new in 11g)
N/AX$KFGBRB(new in 11g)
N/AX$KFMDGRP(new in 11g)
N/AX$KFCLLE(new in 11g)
N/AX$KFVOL(new in 11g)
N/AX$KFVOLSTAT(new in 11g)
N/AX$KFVOFS(new in 11g)
N/AX$KFVOFSV(new in 11g)
? X$KFFXP包含了文件、extent和AU之間的映射關(guān)系。 從該X$視圖可以追蹤給定文件的extent的條帶化和鏡像情況。注意對于primary au和mirror au讀操作的負載是均衡的, 而寫操作要求同時寫2者到磁盤。以下是X$KFFXP視圖列的含義 ? ?
X$KFFXP Column NameDescription
ADDRx$ table address/identifier
INDXrow unique identifier
INST_IDinstance number (RAC)
NUMBER_KFFXPASM file number. Join with v$asm_file and v$asm_alias
COMPOUND_KFFXPFile identifier. Join with compound_index in v$asm_file
INCARN_KFFXPFile incarnation id. Join with incarnation in v$asm_file
PXN_KFFXPProgressive file extent number
XNUM_KFFXPASM file extent number (mirrored extent pairs have the same extent value)
GROUP_KFFXPASM disk group number. Join with v$asm_disk and v$asm_diskgroup
DISK_KFFXPDisk number where the extent is allocated. Join with v$asm_disk
AU_KFFXPRelative position of the allocation unit from the beginning of the disk. The allocation unit size (1 MB) in v$asm_diskgroup
LXN_KFFXP0->primary extent, ->mirror extent, 2->2nd mirror copy (high redundancy and metadata)
FLAGS_KFFXPN.K.
CHK_KFFXPN.K.
? ? X$KFDAT該X$視圖包含了所有allocation unit AU的細節(jié),不管是FREE的還是USED。 ?
X$KFDAT Column NameDescription
ADDRx$ table address/identifier
INDXrow unique identifier
INST_IDinstance number (RAC)
GROUP_KFDATdiskgroup number, join with v$asm_diskgroup
NUMBER_KFDATdisk number, join with v$asm_disk
COMPOUND_KFDATdisk compund_index, join with v$asm_disk
AUNUM_KFDATDisk allocation unit (relative position from the beginning of the disk), join with x$kffxp.au_kffxp
V_KFDATV=this Allocation Unit is used; F=AU is free
FNUM_KFDATfile number, join with v$asm_file
I_KFDATN/K
XNUM_KFDATProgressive file extent number join with x$kffxp.pxn_kffxp
RAW_KFDATraw format encoding of the disk,and file extent information
? ? X$KFDPARTNER 這個X$視圖包含了 disk-partner(1-N)的映射關(guān)系,在一個給定ASM Diskgroup,若2個Disk存有同一個extent的鏡像拷貝,則將2個disk視作partners。因此partners必須屬于同一個diskgroup下的不同的failgroup。 ?
X$KFDPARTNER Column NameDescription
ADDRx$ table address/identifier
INDXrow unique identifier
INST_IDinstance number (RAC)
GRPdiskgroup number, join with v$asm_diskgroup
DISKdisk number, join with v$asm_disk
COMPOUNDdisk identifier. Join with compound_index in v$asm_disk
NUMBER_KFDPARTNERpartner disk number, i.e. disk-to-partner (1-N) relationship
MIRROR_KFDPARNERif=1 in a healthy normal redundancy config
PARITY_KFDPARNERif=1 in a healthy normal redundancy config
ACTIVE_KFDPARNERif=1 in a healthy normal redundancy config
? 研究ASM必要的技巧 ? 1)找出ASM的鏡像mirror extent,在例子中是ASM的spfile ? ? [grid@localhost ~]$ sqlplus / as sysasmSQL*Plus: Release 11.2.0.3.0 Production on Wed Feb 13 11:13:39 2013Copyright (c) 1982, 2011, Oracle. All rights reserved.Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production With the Automatic Storage Management optionINSTANCE_NAME ---------------- +ASMSQL> SQL> show parameter spfileNAME TYPE VALUE ------------------------------------ ----------- ------------------------------ spfile string +SYSTEMDG/asm/asmparameterfile/registry.253.805993079select GROUP_KFFXP, DISK_KFFXP, AU_KFFXPfrom x$kffxpwhere number_kffxp =(select file_numberfrom v$asm_aliaswhere name = 'REGISTRY.253.805993079');GROUP_KFFXP DISK_KFFXP AU_KFFXP ----------- ---------- ----------3 2 383 1 393 0 44也可以這樣定位select GROUP_KFDAT, NUMBER_KFDAT, AUNUM_KFDATfrom x$kfdatwhere fnum_kfdat = (select file_numberfrom v$asm_aliaswhere name = 'REGISTRY.253.805993079')GROUP_KFDAT NUMBER_KFDAT AUNUM_KFDAT ----------- ------------ -----------3 0 443 1 393 2 38==> 找到該 DISK對應(yīng)的路徑 SQL> select path,DISK_NUMBER from v$asm_disk where GROUP_NUMBER=3 and disk_number in (0,1,2);PATH DISK_NUMBER -------------------- ----------- /dev/asm-diski 2 /dev/asm-diskh 1 /dev/asm-diskg 0SQL> create pfile='/home/grid/pfile' from spfile;File created.SQL> Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production With the Automatic Storage Management option[grid@localhost ~]$ cat pfile +ASM.asm_diskgroups='EXTDG','NORDG'#Manual Mount *.asm_diskstring='/dev/asm*' *.asm_power_limit=1 *.diagnostic_dest='/g01/app/grid' *.instance_type='asm' *.large_pool_size=12M *.local_listener='LISTENER_+ASM' *.remote_login_passwordfile='EXCLUSIVE'通過dd讀取該AU [grid@localhost ~]$ dd if=/dev/asm-diski of=/tmp/spfile.dmp skip=38 bs=1024k count=1 1+0 records in 1+0 records out 1048576 bytes (1.0 MB) copied, 0.00328614 seconds, 319 MB/s[grid@localhost ~]$ strings /tmp/spfile.dmp +ASM.asm_diskgroups='EXTDG','NORDG'#Manual Mount *.asm_diskstring='/dev/asm*' *.asm_power_limit=1 *.diagnostic_dest='/g01/app/grid' *.instance_type='asm' *.large_pool_size=12M *.local_listener='LISTENER_+ASM' *.remote_login_passwordfile='EXCLUSIVE'[grid@localhost ~]$ dd if=/dev/asm-diskh of=/tmp/spfile1.dmp skip=39 bs=1024k count=1 1+0 records in 1+0 records out 1048576 bytes (1.0 MB) copied, 0.0325114 seconds, 32.3 MB/s[grid@localhost ~]$ strings /tmp/spfile1.dmp +ASM.asm_diskgroups='EXTDG','NORDG'#Manual Mount *.asm_diskstring='/dev/asm*' *.asm_power_limit=1 *.diagnostic_dest='/g01/app/grid' *.instance_type='asm' *.large_pool_size=12M *.local_listener='LISTENER_+ASM' *.remote_login_passwordfile='EXCLUSIVE' [grid@localhost ~]$ dd if=/dev/asm-diskg of=/tmp/spfile2.dmp skip=44 bs=1024k count=1 1+0 records in 1+0 records out 1048576 bytes (1.0 MB) copied, 0.0298287 seconds, 35.2 MB/s[grid@localhost ~]$ strings /tmp/spfile2.dmp +ASM.asm_diskgroups='EXTDG','NORDG'#Manual Mount *.asm_diskstring='/dev/asm*' *.asm_power_limit=1 *.diagnostic_dest='/g01/app/grid' *.instance_type='asm' *.large_pool_size=12M *.local_listener='LISTENER_+ASM' *.remote_login_passwordfile='EXCLUSIVE' ? ? 2) 顯示asm disk failure group和 disk partners的映射關(guān)系: ? 1* select DISK_NUMBER,FAILGROUP,path from v$asm_disk where group_number=3 SQL> /DISK_NUMBER FAILGROUP PATH ----------- ------------------------------ --------------------3 SYSTEMDG_0003 /dev/asm-diskj2 SYSTEMDG_0002 /dev/asm-diski1 SYSTEMDG_0001 /dev/asm-diskh0 SYSTEMDG_0000 /dev/asm-diskgSQL> select disk,NUMBER_KFDPARTNER,DISKFGNUM from X$KFDPARTNER where grp=3;DISK NUMBER_KFDPARTNER DISKFGNUM ---------- ----------------- ----------0 1 10 2 10 3 11 0 21 2 21 3 22 0 32 1 32 3 33 0 43 1 43 2 412 rows selected. ? ? ASM常見問題, FAQ: ? Q:ASM做 rebalance和 mirror 的基本顆粒是什么? A: ASM做mirror 鏡像的基本顆粒是file的extent,默認情況下一個extent等于一個AU,11g之后一個extent可以是1 or 8 or 64個AU ASM做rebalance重新平衡的基本顆粒也是extent,雖然重新平衡是對每一個AU逐次做的。 ? ? Q:ASMLIB和ASM的關(guān)系是什么? A:ASMLIB是一種種基于Linux module,專門為Oracle Automatic Storage Management特性設(shè)計的內(nèi)核支持庫(kernel support library)。 簡單來說ASMLIB是一種Linux下的程序包,它不屬于Oracle ASM kernel。 通過ASMLIb可以做到設(shè)備名綁定,便于ASM使用的目的; 但是Linux上能實現(xiàn)設(shè)備名綁定并便于ASM使用的服務(wù)有很多,例如udev、mpath等; 所以ASMLIB并不是ASM必須的組件; 國內(nèi)的中文文章對于該概念的描述大多不清晰,造成了ASMLIB=ASM或者ASM必須用ASMLIB的誤解,這是以訛傳訛。 ASMLIB的缺點見拙作《Why ASMLIB and why not?》一文 ? Q: ASM是否是raid 10或者raid 01? A:ASM的mirror是基于file extent的,而不是像raid那樣基于disk或者block。 所以ASM既不同于Raid 10,也不是Raid 01。 如果硬要說相似點的話,因為ASM是先mirror鏡像后stripe條帶化,所以在這個特征上更像Raid 10。 但是注意,再次強調(diào),ASM既不是RAID 10也不是RAID 01, 重復(fù)一千遍。。。。。。。。。。。。。 ? ? TO BE Continued................... 8-)

總結(jié)

以上是生活随笔為你收集整理的深入了解Oracle ASM(一):基础概念的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。