本文說明如何使用 Azure 入口網站來備份適用於 PostgreSQL 的 Azure 資料庫伺服器。 您也可以使用適用於 PostgreSQL 資料庫的 Azure PowerShell、 Azure CLI 和 REST API 來設定備份。
開始之前,請先檢閱 支持的設定、功能考慮和已知限制,以及 常見問題。
在 PostgreSQL 資料庫上設定備份
您可以在多個適用於 PostgreSQL 的 Azure 資料庫伺服器上設定多個 PostgreSQL 資料庫的備份。 若要使用 Azure 備份來設定這類備份,請遵循下列步驟:
移至 [備份保存庫],選取保存庫,然後選取 [ 備份]。
或者,您可以從 備份中心移至此頁面。
在 [基本] 索引標籤上,輸入必要資訊。
在 備份原則 頁籤上,選取或 建立 定義備份排程和保留持續時間的政策。
在 [ 數據源] 索引標籤上 ,選取 [新增/編輯]。
在 [ 選取要備份的資源 ] 窗格中,如果訂用帳戶位於與保存庫相同的區域中,請選擇適用於 PostgreSQL 的 Azure 資料庫伺服器之一。 選取箭號以顯示伺服器內的資料庫清單。
附註
您不需要備份資料庫 azure_maintenance 和 azure_sys。 此外,您無法備份已備份至備份保存庫的資料庫。
透過允許網路設定中的受信任 Microsoft 服務,您可以備份已啟用私人端點的適用於 PostgreSQL 的 Azure 資料庫伺服器。
選取 [指派金鑰保存庫 ] 以選取儲存連線到所選資料庫的認證金鑰保存庫。 您應該已在金鑰保存庫中建立相關的祕密。
若要在個別資料列等級指派金鑰保存庫,請按一下 [選取金鑰保存庫和祕密]。 您也可以選取多個數據列,然後在動作功能表上選取 [ 指派密鑰保存庫 ] 來指派金鑰保存庫。
若要指定祕密資訊,請使用下列其中一個選項:
輸入秘密 URI:如果您共用或已知秘密 URI,請使用此選項。 您可以選取秘密,然後複製 秘密標識碼 值,以從金鑰保存庫取得秘密 URI。
不過,使用此選項時,Azure 備份無法查看您參考的密鑰保存庫。 無法以內嵌方式授與金鑰保存庫的存取權限。 若要讓備份作業成功,備份管理員以及 PostgreSQL 和/或金鑰保存庫管理員必須確保在設定備份流程之外,為備份保存庫手動授與金鑰保存庫的存取權,備份作業才能成功。
從金鑰保存庫選取:如果您知道金鑰保存庫和秘密名稱,請使用此選項。 然後按下 [選取金鑰保存庫和秘密 ],然後輸入詳細數據。
使用此選項時,您 (以具有金鑰保存庫寫入權限的備份管理員身分) 會以內嵌方式授與金鑰保存庫的存取權限。 金鑰保存庫和祕密可以預先存在或隨時建立。
請確定祕密是適用於 PostgreSQL 的 Azure 資料庫伺服器連接字串,格式為 ADO.NET。 必須將字串更新為擁有伺服器備份權限的資料庫使用者的憑證。 深入瞭解如何在金鑰保存庫中建立秘密。
完成更新金鑰保存庫和秘密的信息之後,驗證就會開始。
Azure 備份服務會驗證其具有從金鑰保存庫讀取秘密詳細數據並連線到資料庫所需的所有 訪問許可權 。 在此程式中,[ 設定備份 ] 窗格上所選數據源的狀態會顯示為 [驗證]。
如果遺失一或多個訪問許可權,服務會顯示下列其中一個錯誤訊息:
用戶無法指派角色:當您(作為備份管理員)沒有適用於PostgreSQL的 Azure 資料庫伺服器和/或密鑰保存庫的寫入許可權時,會出現此訊息,以指派遺漏的許可權,如 檢視詳細數據底下所列。
選取動作功能表上的 下載角色指派範本 按鈕下載指派範本,然後由 PostgreSQL 和/或密鑰保存庫管理員執行該範本。 這是 Azure Resource Manager 範本,可協助您指派必要資源的必要許可權。
成功執行範本之後,請選取 [設定備份] 窗格上的 [重新驗證]。
角色指派未完成:當您 (以備份管理員身分) 具有適用於 PostgreSQL 的 Azure 資料庫伺服器的寫入權限,以及/或要指派的金鑰保存庫遺失 [檢視詳細資料] 下列出的權限時,就會顯示此訊息。 使用上方動作功能表上的 [指派遺失的角色] 按鈕,以內嵌方式授與適用於 PostgreSQL 的 Azure 資料庫伺服器和/或金鑰保存庫的權限。
選取動作功能表上的 [指派遺漏的角色 ],然後指派角色。 程序開始後,金鑰保存庫和/或適用於 PostgreSQL 的 Azure 資料庫伺服器上的遺漏存取權限會被授與至備份保存庫。 在 [ 範圍] 區域中,您可以定義應授與訪問許可權的範圍。 當動作完成時,重新驗證就會啟動。
備份保存庫會從金鑰保存庫存取秘密,並執行與資料庫的測試連線,以驗證已正確輸入認證。 也會檢查資料庫 用戶的許可權,以查看資料庫使用者是否具有資料庫的備份相關許可權。
如果低許可權的用戶沒有資料庫的備份/還原許可權,驗證就會失敗。 PowerShell 腳本會針對每個記錄或選取的資料庫動態產生。 執行 PowerShell 指令碼,將這些權限授與資料庫上的資料庫使用者。 或者,您可以使用 pgAdmin 或 PSQL 工具來指派這些許可權。
當 [備份整備程度 ] 顯示 [成功] 時,選取 [ 檢閱並設定 ] 索引卷標,以繼續進行提交作業的最後一個步驟。
選取 [設定備份]。 然後,追蹤 [ 備份實例 ] 窗格上的進度。
建立備份原則
您可以在流程期間建立備份原則,以設定備份。 或者,前往 [備份中心]>[備份原則]>[新增]。 您也可以 使用 REST API 建立 PostgreSQL 資料庫的備份原則。
在 [建立備份原則] 窗格的 [基本] 索引標籤上,輸入新原則的名稱。
在 [ 排程和保留] 索引標籤上,定義備份排程。
目前只有每周備份選項可用。 不過,您可以在一週內多天排程進行備份。
選取 [新增保留規則 ] 以定義保留設定。
您可以新增一或多個保留規則。 每個保留規則都會假設特定備份的輸入,以及這些備份的數據存放區和保留期間。
若要將您的備份儲存在兩個數據存放區之一(或層級),請選取 [保存庫標準] 或 [保存庫封存] (預覽版)。
若要在備份數據存放區到期時將備份移至封存數據存放區,請選取 [到期]。
附註
如果沒有任何其他保留規則,就會套用 預設 保留規則。 其預設值為三個月。
在備份數據存放區中,保留期間的範圍從 7 天到 10 年。
在封存數據存放區中,保留期間的範圍從 6 個月到 10 年。
選擇 新增,然後完成檢閱和建立原則的過程。
保留規則會以預先決定的優先順序進行評估。 優先順序是每年規則的最高優先順序,後面接著每月規則,然後是每周規則。
沒有其他規則符合資格時,會套用預設保留設定。 例如,相同的恢復點可能是每周進行的第一次成功備份,以及每個月進行的第一次成功備份。 不過,由於每月規則的優先順序高於每周規則的優先順序,因此會套用與每個月第一次成功備份對應的保留期。
在金鑰保存庫中建立秘密
秘密在於 ADO.NET 格式的 Azure PostgreSQL 資料庫伺服器連接字串。 它會使用授與伺服器上備份許可權的資料庫使用者認證進行更新。
從適用於 PostgreSQL 的 Azure 資料庫伺服器複製連接字串。 使用文字編輯器來更新使用者標識碼和密碼。
執行 PowerShell 腳本,將許可權授與資料庫使用者
在設定備份的過程中動態產生的 PowerShell 腳本會接受資料庫使用者和 PostgreSQL 系統管理員認證作為輸入,將備份相關的許可權授予該資料庫使用者。
若要執行文稿,請確定 PSQL 工具 位於電腦上。 也請 PATH 確定環境變數已適當地設定為 PSQL 工具的路徑:
若要允許網路連線,請確定適用於 PostgreSQL 的 Azure 資料庫中的連線 安全性設定 包含允許清單中電腦的 IP 位址。
執行隨選備份
若要觸發不在原則中所指定排程中的備份:
追蹤備份作業
對於排定的備份,或如果您觸發隨選備份作業,Azure 備份服務會建立作業來追蹤。 若要檢視備份作業的狀態:
移至 [備份實例] 窗格。 它會顯示 工作 儀錶板,其中包含過去七天的操作和狀態。
選取 [檢視全部] 以顯示此備份實例的持續和過去的作業。
檢閱備份和還原作業的清單及其狀態。 選擇工作以查看其詳細資訊。
相關內容
- 使用 Azure 入口網站還原 PostgreSQL 資料庫。
- 使用 Azure PowerShell、 Azure CLI 和 REST API 還原 PostgreSQL 資料庫。
- Azure 備份定價。
- 使用 Azure 備份針對 PostgreSQL 資料庫備份進行疑難排解。
- 使用 Azure 入口網站管理適用於 PostgreSQL 的 Azure 資料庫伺服器。