Oracle?Exadata存儲(chǔ)節(jié)點(diǎn)主動(dòng)替換磁盤操作步驟
前言
寫這邊文章的初衷是來自于上次的朋友案例,朋友咨詢哪些情況下需要主動(dòng)替換一體機(jī)的磁盤,所以這里我們就簡單的聊聊這個(gè)話題。
在Oracle Exadata環(huán)境中,存儲(chǔ)節(jié)點(diǎn)的磁盤通常在出現(xiàn)故障或被系統(tǒng)標(biāo)記為有問題時(shí)才需要更換。Exadata的存儲(chǔ)管理軟件具有完善的自動(dòng)化機(jī)制來處理這些情況。然而,在某些特定場(chǎng)景下,主動(dòng)(Proactively)更換磁盤是一種必要且明智的預(yù)防性維護(hù)措施,比如在上次我們分享的替換磁盤的案例中,操作系統(tǒng)已經(jīng)給出IO錯(cuò)誤,標(biāo)識(shí)有損壞時(shí),一體機(jī)軟件并沒有統(tǒng)計(jì)IO錯(cuò)誤,也沒有給出對(duì)應(yīng)的警告。
這里結(jié)合Oracle官方文檔和過去的最佳實(shí)踐,詳細(xì)探討在Exadata存儲(chǔ)節(jié)點(diǎn)上主動(dòng)更換磁盤的適用場(chǎng)景、具體操作步驟以及不同方法之間的差異,旨在為數(shù)據(jù)庫和系統(tǒng)管理員提供一份清晰、實(shí)用的操作指南。
為什么要主動(dòng)更換磁盤?
通常情況下,我們不建議手動(dòng)干預(yù)Exadata的磁盤管理。存儲(chǔ)軟件會(huì)根據(jù)壞塊數(shù)量(errorCount)、Scrubbing等一系列復(fù)雜的健康度指標(biāo)來判斷磁盤的健康度,決定磁盤是否需要被替換。
但是,在以下幾種情況同時(shí)滿足時(shí),主動(dòng)更換磁盤是值得考慮的:
- 磁盤錯(cuò)誤數(shù)持續(xù)增長:通過
CellCLI> list physicaldisk <disk_name> detail
觀察到errorCount
在不斷增加,這通常是磁盤健康狀況惡化的明顯跡象。 - 設(shè)備老舊:對(duì)于已經(jīng)運(yùn)行超過5年甚至更長時(shí)間的老舊Exadata設(shè)備,硬件故障的風(fēng)險(xiǎn)自然更高,同時(shí)操作系統(tǒng)中已經(jīng)有IO異常的提示。
- Normal冗余磁盤組:如果您的ASM磁盤組(Disk Group)使用的是Normal冗余,那么在單塊磁盤故障期間,冗余度會(huì)暫時(shí)降低,此時(shí)如果再有一塊盤出現(xiàn)問題,將可能導(dǎo)致數(shù)據(jù)丟失。
- 高IO負(fù)載、高容量磁盤:在高IO復(fù)雜和高容量磁盤的環(huán)境中,為不影響業(yè)務(wù)性能的前提下,常常更換一個(gè)磁盤需要持續(xù)幾天時(shí)間,所以在此環(huán)境中,可以適當(dāng)?shù)牟捎弥鲃?dòng)更換磁盤的方式。
在這些情況下,主動(dòng)更換有潛在風(fēng)險(xiǎn)的磁盤,可以有效避免因突發(fā)性磁盤徹底損壞而導(dǎo)致的數(shù)據(jù)風(fēng)險(xiǎn)和計(jì)劃外的緊急維護(hù)。
主動(dòng)更換磁盤的操作步驟
主動(dòng)更換磁盤的核心命令是ALTER PHYSICALDISK ... DROP FOR REPLACEMENT
。這個(gè)命令會(huì)檢查目標(biāo)磁盤上的GridDisk是否可以被安全地從ASM磁盤組中offline,而不會(huì)導(dǎo)致磁盤組被強(qiáng)制dismount。
根據(jù)您使用的Exadata System Software版本的不同,操作步驟會(huì)有所差異。
場(chǎng)景一:Exadata System Software >= 21.2.0
從21.2.0版本開始,Oracle引入了MAINTAIN REDUNDANCY
選項(xiàng),這使得整個(gè)換盤過程可以在不降低ASM磁盤組冗余度的情況下完成。
操作命令:
CellCLI> alter physicaldisk X:Y drop for replacement maintain redundancy
其中 X:Y
是您需要替換的磁盤名稱,例如 20:5
。
工作流程:
- 該命令會(huì)首先將該磁盤上的數(shù)據(jù)在ASM層面進(jìn)行一次完整的重分布(Rebalance)。
- 在Rebalance完成之后,系統(tǒng)才會(huì)將該磁盤標(biāo)記為可移除狀態(tài),并點(diǎn)亮藍(lán)色的 "OK to Remove" LED燈。
- 更換新磁盤后,系統(tǒng)會(huì)自動(dòng)將新盤加入,并觸發(fā)第二次全局的Rebalance。
優(yōu)缺點(diǎn):
- 優(yōu)點(diǎn):在整個(gè)操作過程中,ASM磁盤組始終保持其原有的冗余級(jí)別,數(shù)據(jù)安全性最高。
- 缺點(diǎn):會(huì)觸發(fā)兩次完整的全局Rebalance,第一次Rebalance完成前無法換盤,整個(gè)過程可能耗時(shí)非常長(甚至一兩天),對(duì)系統(tǒng)I/O壓力也更大。
場(chǎng)景二:Exadata System Software < 21.2.0 或 選擇不保持冗余度
在老版本中,或者當(dāng)您希望縮短維護(hù)時(shí)間窗口時(shí),可以選擇不帶MAINTAIN REDUNDANCY
選項(xiàng)的方式。
操作步驟:
(僅限老版本) 從ASM中手動(dòng)
DROP
磁盤:SQL> ALTER DISKGROUP diskgroup_name DROP DISK asm_disk_name;
您需要等待這次Rebalance操作完成。
從Cell層面
DROP
物理磁盤:CellCLI> alter physicaldisk X:Y drop for replacement
工作流程:
- 該命令會(huì)檢查并確認(rèn)將目標(biāo)磁盤上的GridDisk脫機(jī)(offline)后,不會(huì)導(dǎo)致ASM磁盤組因失去足夠冗余度而dismount。
- 檢查通過后,相關(guān)的GridDisk會(huì)從ASM中被置為offline,物理磁盤被禁用,并點(diǎn)亮藍(lán)色LED燈提示可以更換。
優(yōu)缺點(diǎn):
- 缺點(diǎn):在換盤期間,ASM磁盤組的冗余度會(huì)臨時(shí)性降低。這意味著如果在此時(shí)另一塊磁盤也發(fā)生故障,將有數(shù)據(jù)丟失的風(fēng)險(xiǎn)。
總結(jié)與建議
主動(dòng)更換Exadata存儲(chǔ)磁盤是一項(xiàng)需要謹(jǐn)慎操作的維護(hù)任務(wù)。
- 安全優(yōu)先:如果業(yè)務(wù)對(duì)數(shù)據(jù)安全性的要求極高,且維護(hù)窗口充足,特別是在使用Normal冗余的情況下,推薦使用
maintain redundancy
選項(xiàng)(需要軟件版本 >= 21.2.0)。雖然耗時(shí)較長,但能確保數(shù)據(jù)冗余度不降低。 - 效率優(yōu)先:如果是在High冗余的磁盤組中,或者能夠接受在短時(shí)間內(nèi)臨時(shí)降低冗余度,那么不帶
maintain redundancy
選項(xiàng)的方式是更高效的選擇。它能顯著縮短維護(hù)時(shí)間,減少對(duì)業(yè)務(wù)性能的影響。
在任何操作之前,請(qǐng)務(wù)必:
- 確認(rèn)磁盤信息:使用
list diskmap
等命令準(zhǔn)確識(shí)別物理磁盤、Cell Disk和Grid Disk的對(duì)應(yīng)關(guān)系。 - 遵循官方文檔:本文是對(duì)官方文檔和實(shí)踐的總結(jié),但執(zhí)行時(shí)仍建議參考最新的Oracle官方文檔。
- 觀察LED燈:在物理拔盤之前,一定要確認(rèn)機(jī)箱上對(duì)應(yīng)磁盤的藍(lán)色
OK to Remove
LED燈已經(jīng)亮起。 - 在高IO負(fù)載、大容量磁盤的一體機(jī)環(huán)境中,在更換磁盤重平衡數(shù)據(jù)過程中,會(huì)影響到數(shù)據(jù)庫IO性能,請(qǐng)隨時(shí)觀察數(shù)據(jù)庫性能指標(biāo),曾在多個(gè)環(huán)境中遇到此類的問題。
到此這篇關(guān)于Oracle Exadata存儲(chǔ)節(jié)點(diǎn)主動(dòng)替換磁盤最佳實(shí)踐的文章就介紹到這了,更多相關(guān)Oracle Exadata存儲(chǔ)節(jié)點(diǎn)主動(dòng)替換磁盤最佳實(shí)踐內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
云服務(wù)器centos8安裝oracle19c的詳細(xì)教程
這篇文章主要介紹了云服務(wù)器centos8安裝oracle19c的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12oracle查詢一天前、幾天前、幾小時(shí)前、一小時(shí)前的數(shù)據(jù)以及恢復(fù)誤刪的數(shù)據(jù)
這幾天工作經(jīng)常需要查詢某天之前的數(shù)據(jù),整理了下相關(guān)的查詢,下面這篇文章主要給大家介紹了關(guān)于oracle查詢一天前、幾天前、幾小時(shí)前、一小時(shí)前的數(shù)據(jù)以及恢復(fù)誤刪的數(shù)據(jù),需要的朋友可以參考下2024-03-03oracle數(shù)據(jù)庫添加或刪除一列的sql語句
需要注意的一點(diǎn),如果要修改的表,不是當(dāng)前的用戶的表,那么就需要添加上用戶的名稱。以及有修改此表的權(quán)限2012-05-05windows下oracle 11g r2 安裝過程與卸載詳細(xì)圖解
這篇文章主要介紹了windows下oracle 11g r2 安裝過程與卸載詳細(xì)圖解,需要的朋友可以參考下2016-04-04Oracle數(shù)據(jù)庫中TRUNC()函數(shù)示例詳解
在Oracle數(shù)據(jù)庫中TRUNC函數(shù)主要用于截?cái)嗳掌?、時(shí)間或數(shù)值,通過指定不同的格式參數(shù),可以截取日期或時(shí)間的特定部分,如年份、月份、小時(shí)等,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10兩種oracle創(chuàng)建字段自增長的實(shí)現(xiàn)方式
這篇文章介紹了兩種oracle創(chuàng)建字段自增長的實(shí)現(xiàn)方式,一是序列+觸發(fā)器,二是序列+顯示調(diào)用序列,需要的朋友可以參考下2015-07-07Oracle計(jì)算時(shí)間差為毫秒的實(shí)現(xiàn)代碼
這里我是用分隔字符串單獨(dú)計(jì)算毫秒部分,如果有更好的辦法,請(qǐng)大家分享一下,下面是查詢時(shí)間差為毫秒的模板,需要的朋友可以參考下2017-03-03