亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Oracle ASM鏡像冗余

IT那活兒 / 2711人閱讀
Oracle ASM鏡像冗余

點(diǎn)擊上方“IT那活兒”,關(guān)注后了解更多精彩內(nèi)容??!


前  言

最近碰到個(gè)案例,某ASM環(huán)境同時(shí)損壞了多塊asmdisk,用戶非常擔(dān)心丟數(shù)據(jù),經(jīng)過核查發(fā)現(xiàn)該環(huán)境采用High模式冗余3份鏡像數(shù)據(jù),一般來說是不會(huì)丟數(shù)據(jù)的,倘若不巧3份鏡像都在這幾個(gè)損壞的asmdisk中那就完蛋了。

今天我們就來研究一下ASM的鏡像冗余以及核驗(yàn)數(shù)據(jù)的鏡像位置從而判斷某些asmdisk的損壞是否會(huì)引發(fā)數(shù)據(jù)丟失。


首先ASM使用failure group(FG)來實(shí)現(xiàn)數(shù)據(jù)的冗余,FG由一個(gè)或多個(gè)asmdisk構(gòu)成它是ASM Diskgroup的一部分.ASM確保數(shù)據(jù)和它對(duì)應(yīng)的鏡像冗余保存在不同的FG中,當(dāng)FG中的一個(gè)或多個(gè)磁盤故障時(shí),或整個(gè)FG故障時(shí)也不會(huì)有數(shù)據(jù)丟失保證數(shù)據(jù)的可用性。

F G


FG有2種模式
1. 在創(chuàng)建ASM diskgroup時(shí),沒有指定FG,ASM默認(rèn)每個(gè)asmdisk就是獨(dú)立的FG,比如有100個(gè)asmdisk那就是100個(gè)FG,數(shù)據(jù)以AU為單位在FG之間實(shí)現(xiàn)鏡像冗余。
2. 在創(chuàng)建ASM diskgroup時(shí),指定了FG,還是100個(gè)asmdisk為例,可以指定4個(gè)FG,每個(gè)FG對(duì)應(yīng)25個(gè)asmdisk,數(shù)據(jù)以AU為單位在FG之間實(shí)現(xiàn)鏡像冗余。
ASM有3種冗余級(jí)別,分別是External/ Normal/ High具體如下:
冗余級(jí)別(Redundancy)
描述
External
類似于傳統(tǒng)裸設(shè)備、文件系統(tǒng)模式,冗余由底層設(shè)備提供,ASM層不處理冗余。
Normal
ASM層為每一份數(shù)據(jù)(primary data)提供一份(mirror data),相當(dāng)于存2份數(shù)據(jù)。
必須存在2個(gè)及以上的FG才可以創(chuàng)建Normal模式的diskgroup。
High
ASM層為每一份數(shù)據(jù)(primary data)提供二份(mirror data),相當(dāng)于存3份數(shù)據(jù)。
必須存在3個(gè)及以上的FG才可以創(chuàng)建High模式的diskgroup。


注意這里External模式ASM層不做鏡像,數(shù)據(jù)的可用性依賴于底層設(shè)備的raid冗余,本文僅探討Normal與High模式。

FG模式1
創(chuàng)建diskgroup時(shí)沒有指定FG的冗余描述圖:
Normal:
圖中可以看到,每個(gè)asmdisk都是一個(gè)FG,Normal模式的2份數(shù)據(jù)存在不同的FG上,當(dāng)某個(gè)asmdisk故障(FG故障)時(shí),數(shù)據(jù)任然可以在鏡像FG中訪問。當(dāng)某個(gè)asmdisk(FG)與對(duì)應(yīng)的鏡像數(shù)據(jù)asmdisk(FG)同時(shí)故障時(shí)會(huì)丟失數(shù)據(jù)。
High:
圖中可以看到,每個(gè)asmdisk都是一個(gè)FG,High模式的3份數(shù)據(jù)存在不同的FG上,當(dāng)某個(gè)asmdisk故障(FG故障)時(shí),數(shù)據(jù)任然可以在其它2份鏡像FG中訪問。當(dāng)某個(gè)asmdisk(FG)與對(duì)應(yīng)的2份鏡像數(shù)據(jù)asmdisk(FG)同時(shí)故障時(shí)會(huì)丟失數(shù)據(jù)。
在normal或high模式下diskgroup里的asmdisk未指定FG時(shí),默認(rèn)每個(gè)asmdisk都是一個(gè)獨(dú)立的FG,AU在各個(gè)FG之間鏡像冗余,也就是我們平常說的創(chuàng)建Normal冗余需要至少2塊asmdisk(FG),High模式至少需要3塊asmdisk(FG)。
FG模式2
創(chuàng)建diskgroup時(shí)指定了FG的冗余描述圖:
Normal:
圖中可以看到一共有8塊asmdisk,每2塊指定為1個(gè) FG,Normal模式的2份數(shù)據(jù)存在不同的FG上,當(dāng)某個(gè)FG故障時(shí),數(shù)據(jù)任然可以在鏡像FG中訪問。當(dāng)某個(gè)FG與對(duì)應(yīng)的鏡像數(shù)據(jù)FG同時(shí)故障時(shí)會(huì)丟失數(shù)據(jù)。
High:
圖中可以看到一共有8塊asmdisk,每2塊指定為1個(gè) FG,High模式的3份數(shù)據(jù)存在不同的FG上,當(dāng)某個(gè)FG故障時(shí),數(shù)據(jù)任然可以在其他2份鏡像FG中訪問。當(dāng)某個(gè)FG與對(duì)應(yīng)的2份鏡像數(shù)據(jù)FG同時(shí)故障時(shí)會(huì)丟失數(shù)據(jù)。
圖中可以看到Normal冗余將2塊asmdisk都指向了FG1時(shí),創(chuàng)建diskgroup報(bào)錯(cuò),提示只發(fā)現(xiàn)了1個(gè)FG,最少需要2個(gè)FG。High冗余同理。
這里指定2個(gè)及以上FG時(shí)就可以正常創(chuàng)建Normal冗余,High同理。注意當(dāng)人工干預(yù)指定了FG時(shí),注意各個(gè)FG的容量需要一致,以保證數(shù)據(jù)的冗余性。舉例Normal模式下,指定了FG1為100G,FG2為50G 相當(dāng)于FG1里還有50G數(shù)據(jù)在FG2中沒有空間可以鏡像,這就失去了冗余安全性,部分環(huán)境里看到的lsdg顯示Usable_File_MB為負(fù)數(shù)就是失去了冗余的完整性,這種環(huán)境往往需要注意一旦出現(xiàn)asmdisk故障可能丟失數(shù)據(jù)。

分 隔


上文中我們搞清了diskgroup通過FG來實(shí)現(xiàn)鏡像冗余,接下來我們新建一個(gè)High模式的磁盤組并創(chuàng)建數(shù)據(jù)文件,來觀察數(shù)據(jù)以及鏡像數(shù)據(jù)的具體存放FG。如下:
通過dbca在我們的diskgroup中創(chuàng)建一個(gè)新實(shí)例,可以看到已經(jīng)產(chǎn)生了數(shù)據(jù)文件。我們以asm file_number 260 users表空間文件為例來檢查該文件所在的FG地址。
在High模式下,每份數(shù)據(jù)會(huì)分為Primary copy/Mirror copy/2nd Mirrory 3份數(shù)據(jù),且3份數(shù)據(jù)分布在不同的FG中。
這里我們先關(guān)閉diskgroup的重平衡,在模擬故障offline Primary Copy 與 Mirror copy 的FG,如下:
此時(shí)asm users260文件的extent#0只剩下2nd Mirror的FG可以訪問.DB層Useres表空間下的表訪問正常,asmdisk  offline無影響.
以上我們是使用asm文件號(hào)來進(jìn)行查詢鏡像數(shù)據(jù)的存儲(chǔ)位置, 當(dāng)我們出現(xiàn)asmdisk故障時(shí)也可以根據(jù)disk_number來進(jìn)行核驗(yàn)mirror數(shù)據(jù)所在的FG,如下:
通過帶入故障的group number和disk_number 查出該asmdisk內(nèi)的文件涉及的鏡像FG,當(dāng)故障的asmdisk涉及的鏡像FG狀態(tài)都正常時(shí),我們就可以確保數(shù)據(jù)仍然是安全的,diskgroup 重平衡后就會(huì)自動(dòng)恢復(fù)對(duì)應(yīng)的鏡像冗余級(jí)別。
本文就到此為止。

END


本 文 原 創(chuàng) 來 源:IT那活兒微信公眾號(hào)(上海新炬王翦團(tuán)隊(duì))


文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/129682.html

相關(guān)文章

  • #yyds干貨盤點(diǎn)#Java ASM系列:(091)冗余變量分析

    摘要:程序中定義的變量是存儲(chǔ)在當(dāng)中。判斷和是否相同,如果相同,那么表示是冗余的變量。示例冗余變量分析預(yù)期目標(biāo)在下面的代碼中,會(huì)提示和局部變量是多余的我們的預(yù)期目標(biāo)識(shí)別出和是冗余變量。 本文屬于Java ASM系列三:Tree API當(dāng)中的一篇。 1. 如何判斷變量是否冗余 如果在IntelliJ IDEA當(dāng)中編寫如下的代碼,它會(huì)提示str2和str3局部變量是多余的: ...

    mengbo 評(píng)論0 收藏0
  • DBASK問答集萃第四期

    摘要:問題九庫控制文件擴(kuò)展報(bào)錯(cuò)庫的擴(kuò)展報(bào)錯(cuò),用的是裸設(shè)備,和還是原來大小,主庫的沒有報(bào)錯(cuò),并且大小沒有變,求解釋。專家解答從報(bào)錯(cuò)可以看出,控制文件從個(gè)塊擴(kuò)展到個(gè)塊時(shí)報(bào)錯(cuò),而裸設(shè)備最大只支持個(gè)塊,無法擴(kuò)展,可以嘗試將參數(shù)改小,避免控制文件報(bào)錯(cuò)。 鏈接描述引言 近期我們?cè)贒BASK小程序新關(guān)聯(lián)了運(yùn)維之美、高端存儲(chǔ)知識(shí)、一森咖記、運(yùn)維咖啡吧等數(shù)據(jù)領(lǐng)域的公眾號(hào),歡迎大家閱讀分享。 問答集萃 接下來,...

    SKYZACK 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<