跳至主要內容
CDelivery

資料持久化

為應用程式掛載指定伺服器上的資料卷,並理解資料和容器的生命週期。

容器可以被更新或重新建立。需要在這些操作後保留的業務資料,應寫入持久化資料卷,而不是只寫在容器自身的檔案系統中。

建立前準備

資料卷由管理員在伺服器的資料卷頁面建立。應用程式操作者需要知道目標伺服器、卷名稱和映像檔要求的資料目錄。

本地資料屬於所選伺服器。當前應用程式必須在建立時選擇這一部署方式:固定到該伺服器、執行一個副本,不能同時使用 XConfig、動態調度或 Guardian。普通應用程式建立後不能直接通過添加掛載切換為本地資料模式。

掛載資料卷

  1. 建立應用程式,在檔案與存儲中選擇資料方式。
  2. 選擇持有目標卷的伺服器。
  3. 添加資料卷並填寫容器內的絕對目錄,例如 /var/lib/mysql。
  4. 根據需要選擇唯讀;資料庫寫入目錄通常需要可寫。
  5. 儲存並建立應用程式,檢查初始化日誌。

卷名稱表示宿主機上的存儲對象,目標路徑表示容器內的位置。名稱相同但位於不同伺服器上的卷,不應被視為同一份資料。

確認資料寫到了正確位置

使用映像檔文件中的資料目錄,不要憑名稱猜測。某些映像檔允許環境變數改變資料目錄,此時掛載目標也必須與最終設定一致。

先寫入一條可識別的測試資料,在允許中斷的測試場景下重新建立執行容器,再驗證資料仍可讀取。生產資料庫的此類檢查應遵循業務維護流程。

操作 對資料的含義
重啟或更新容器 掛載正確時繼續使用原卷,應用程式自身仍可能修改資料
刪除應用程式 保留本地卷,停止應用程式對它的使用
刪除資料卷 刪除對應持久化資料,應先確認備份及使用情況
伺服器失效 本地資料不會因為存在其他伺服器就自動複製過去

常見問題

卷清單為空時,先確認所選伺服器和資料卷服務狀態。權限錯誤時檢查映像檔使用的使用者及卷內檔案權限。應用程式啟動後看不到舊資料時,核對伺服器、卷和容器目錄三個條件。

更新資料庫映像檔前確認資料格式兼容。應用程式設定回復不能撤銷資料庫已完成的遷移或業務寫入。備份、恢復及資料一致性應採用資料庫自身支援的方法。

需要資料庫部署示例及限制說明,繼續有狀態應用程式。

輸入關鍵字搜尋…

↑↓ 移動↵ 選擇Esc 關閉