如果您的系統硬碟因寫入不斷增長的業務資料而導致壓力激增,希望利用資料盤承接特定目錄下的業務資料,緩解系統硬碟負擔。您可參考本文進行操作。本文檔將詳細闡述如何將特定目錄下的業務資料轉移至資料盤,並利用資料盤承接後續寫入該目錄下的業務資料。
此文檔涉及原有系統目錄下資料的遷移,可能會影響您業務系統的正常運行。強烈建議您直接擴容系統硬碟以緩解系統硬碟壓力,具體操作,請參見步驟一:擴容雲端硬碟容量。
前提條件
請確保系統硬碟使用率未達到100%。
重要為確保操作順利進行,請登入執行個體並執行df -h命令,以確認根分區的使用率未達到100%。如根分區的使用率已達到100%,請參見解決Linux執行個體磁碟空間滿問題以擷取相應的解決方案。
請確保資料盤滿足以下條件:
狀態為使用中(In_use)。
已完成初始化操作,但未掛載檔案系統。具體操作,您可查看初始化資料盤(Linux)。
本文檔以在Alibaba Cloud Linux 3.2104下,將儲存在/userdata下的業務資料轉移到/dev/vdb1為例,您需要根據實際情況替換分區或裝置名稱及目標目錄名稱。
流程指引
操作步驟
步驟一:系統硬碟資料備份
為避免操作過程中誤操作導致資料丟失,建議您提前為系統硬碟建立快照,做好資料備份。具體操作,請參見建立快照。
使用快照會產生計費,更多資訊,請參見快照計費。
步驟二:複製業務資料至資料盤
運行以下命令建立檔案目錄/temporary,並將資料盤分區掛載至此目錄下。請根據實際情況修改資料盤分區名稱。
sudo mkdir /temporary sudo mount /dev/vdb1 /temporary將目標目錄/userdata下資料備份至資料盤掛載的/temporary中。請根據實際情況修改目標目錄名稱。
sudo cp -rv /userdata/. /temporary或者您也可以額外安裝rsync工具,用於檔案複製及進度查看。
sudo yum install -y rsync rsync --progress /userdata/* /temporary
步驟三:將資料盤掛載點設定為業務資料目錄
步驟二完成複製後,執行以下指令,卸載/temporary目錄節點。
sudo umount /temporary執行以下命令將目標目錄/userdata改名為/userdata_bak,用作短期備份,防止資料移轉出現異常情況。
sudo mv /userdata /userdata_bak警告該步驟會改變原目錄節點的名稱,可能導致業務系統報錯,且存在短期資料丟失的風險。請您謹慎評估業務風險,並在業務低穀期執行遷移操作。
執行以下命令將/temporary改名為目標目錄/userdata。目標目錄名稱請根據實際情況進行修改。
sudo mv /temporary /userdata將資料盤/dev/vdb1掛載至目標目錄/userdata下。請根據實際情況修改資料盤分區名稱和目標目錄名稱。
sudo mount /dev/vdb1 /userdata輸入df -Th命令查看資料盤分區是否已經掛載至目標系統目錄下。如下圖,表示/dev/vdb1已掛載至 /userdata。

步驟四:驗證業務系統是否正常運行
建議立即重啟業務系統,驗證業務系統是否正常運行。
確認業務系統正常運行後,刪除改名後的/userdata_bak檔案夾。