文章來源掌數科技Hello_Dataknown
話在開頭小編今天要和大家分享一個解決數據庫磁盤空間不足的方案。
該類問題具有普遍性,建議大家可以耐心地看完,若遇到此類問題,希望本篇分享可以給你帶來幫助。
事件背景:磁盤空間不足故障背景:
數據庫由于開始規劃不好,或者磁盤空間限制,随着時間推移,數據迅速增長,導緻數據庫存儲空間不夠,服務器升級也比較困難(服務器資源是足夠的,隻是分配問題),這就需要我們通過其他方式來解決,但是生産環境中有些變化更為困難。
磁盤分配信息如下圖:
上圖因為客戶磁盤的分配不合理,導緻數據庫所在文件系統使用率快80%,且因為有災備系統,不能直接跨區添加數據文件及遷移表空間。
方案設想:移花接木對于該情況,我們可以通過在不影響生産數據庫的情況下,通過移花接木的方法解決。
具體處理流程如下圖:
方案驗證:步步為營
為驗證可行性,特做實驗如下。
因實驗與生産環境有區别,實施時需要根據實際生産環境情況進行操作:
1、查看當前系統的磁盤利用情況,當前數據庫安裝目錄和數據文件,控制文件,日志等所有文件都在/u01文件系統中。
2、當前數據庫在/u01文件系統下,安裝數據庫時創建的分區,假設當前的分區已滿,存儲上其他文件系統還有很大的剩餘空間,如其他兩個文件系統還有9T磁盤空間。
3、原來的數據庫目錄不動,以防止操作失誤後能夠快速恢複數據,保證數據庫數據零丢失。現在卸載原來4.5T存儲所在的文件系統。首先,确認該磁盤下的數據是否需要備份,如不需要直接卸載,否則先備份再卸載。可通過修改/etc/fstab,關機重啟服務器,把存儲挂載到新建的文件系統下(本例中用/dev/sdc1來代替4.5T存儲),把/dev/sdc1挂載到根目錄下的/zskjfrqs。
4、挂載文件系統,修改/etc/fstab,使文件系統能夠開機自動啟動文件系統。
5、備份數據,一緻性關閉數據庫,關閉監聽,對數據庫進行冷備,如果是DG,按照DG規則,停止DG同步即可,實驗中因為對/u01分區不做任何修改,因此不需要卸載/u01文件系統,該客戶的需要先把數據文件冷備到未卸載的一個4.5T的文件系統下。
6、查看當前文件系統,把之前冷備的數據文件遷移至已經重新挂載的文件系統目錄下,并确認權限是否正确。
7.更改環境變量, 通過source命令使更改後的環境變量立即生效。
注: 該客戶實際生産環境無需修改環境變量,因為文件系統目錄結構一緻。
su – oracle
vi .bash_profile
9、修改參數文件。
全文替換,把u01替換成zskjfrqs,啟動數據庫并驗證數據的完整性,連接業務測試是否正常。
10、驗證DG是否同步問題(以下截圖是做為相同目錄實驗)
方案總結
通過這種方式處理,如果變更後的文件系統和原來的文件系統名字相同,數據庫同步不受影響,最大的保護了數據庫的安全,避免了備庫重新安裝。
當然我們也可以單獨給數據文件以及歸檔文件建立單獨的文件系統。具體需要根據具體情況來确定。如果備庫不能同步,使用我們E-OBAR直接重新安裝恢複即可。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!