SQL Server Analysis Services (SSAS) 多維資料庫(Cube)無法使用關聯引擎的 BACKUP DATABASE 指令,必須透過 XMLA (XML for Analysis) 命令執行備份/還原。本文提供可直接用於 SQL Server Agent 作業步驟的 XMLA 範本。
<Backup xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
<Object>
<DatabaseID>YourCubeDB</DatabaseID> <!-- 替換為實際 SSAS 資料庫名稱 -->
</Object>
<File>D:\Backups\YourCubeDB.abf</File> <!-- 替換為實際備份檔完整路徑 -->
<AllowOverwrite>true</AllowOverwrite> <!-- 允許覆寫既有檔案 -->
<ApplyCompression>true</ApplyCompression> <!-- 啟用壓縮,減少檔案體積 -->
</Backup>
<Restore xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
<File>D:\Backups\YourCubeDB.abf</File> <!-- 備份檔路徑 -->
<DatabaseName>YourCubeDB_Restored</DatabaseName> <!-- 還原後的資料庫名稱,可異名 -->
<!-- 可選屬性 -->
<!-- <AllowOverwrite>true</AllowOverwrite> -->
<!-- <DbStorageLocation>D:\Data</DbStorageLocation> -->
</Restore>
| 屬性 | 必要 | 說明 |
|---|---|---|
| DatabaseID | 是 | 來源 SSAS 資料庫識別碼(非名稱),可從 SSMS 物件總管屬性取得 |
| File | 是 | .abf 檔完整 UNC 路徑,服務帳號需具寫入權限 |
| AllowOverwrite | 否 | true/false,預設 false。排程備份建議 true |
| ApplyCompression | 否 | true/false,預設 false。大型 Cube 建議開啟,CPU 換 I/O |
| DatabaseName (Restore) | 是 | 還原目標資料庫名稱,可與原名不同以支援並存測試 |
| DbStorageLocation (Restore) | 否 | 指定還原資料檔儲存路徑,不指定則用預設 Data 目錄 |
Write 權限。2003/engine 適用 SSAS 2005/2008/2008R2/2012/2014/2016/2017/2019。新版本支援更多屬性(如 ReadWriteMode)。AllowOverwrite=true。