佈建具有連續備份和時間點還原功能的 Azure Cosmos DB 帳戶
適用於:NoSQL MongoDB
Azure Cosmos DB 的時間點還原功能可協助您從容器內的意外變更復原,還原已刪除的資源,或還原至任何區域 (備份存在於其中)。 連續備份模式可讓您還原至過去 30 天或 7 天內的任何時間點。 您可以回到多久以前取決於帳戶的連續模式層級。
本文說明如何使用 Azure 入口網站、PowerShell、CLI 和 Resource Manager 範本,佈建具有連續備份和時間點還原功能的帳戶。
注意
只有在下列條件成立時,才能佈建連續備份模式帳戶:
- 帳戶屬於 API for NoSQL 或 API for MongoDB 類型。
- 帳戶屬於 API for Table 或 API for Gremlin 類型。
- 帳戶具有單一寫入區域。
使用 Azure 入口網站佈建
建立新的 Azure Cosmos DB 帳戶時,請在 [備份原則] 索引標籤中選擇 [連續] 模式,為新帳戶啟用時間點還原功能。 使用時間點還原時,資料會還原至新帳戶,您目前無法還原至現有帳戶。
使用 Azure PowerShell 佈建
針對 PowerShell 和 CLI 命令,如果尚未提供層級值,則該值為選擇性值。 如果未提供,帳戶備份將會保留 30 天。 層級會以 Continuous7Days
值或 Continuous30Days
值來表示。
安裝最新版的 Azure PowerShell
- 在佈建帳戶之前,請先安裝任何高於 6.2.0 版的 Azure PowerShell。 如需最新版 Azure PowerShell 的詳細資訊,請參閱最新版的 Azure PowerShell。
- 若要佈建
Continuous7Days
層,您必須執行Install-Module -Name Az.CosmosDB -AllowPrerelease
來安裝模組的預覽版本。
接下來,連線到您的 Azure 帳戶,然後使用下列命令來選取必要的訂閱:
使用下列命令登入 Azure:
Connect-AzAccount
使用下列命令選取特定訂閱:
Select-AzSubscription -Subscription <SubscriptionName>
API for NoSQL 帳戶
若要佈建具有連續備份的帳戶,請連同一般佈建命令新增引數 -BackupPolicyType Continuous
。
下列 Cmdlet 假設有單一區域寫入帳戶 Pitracct 位於 MyRG 資源群組中的美國西部區域內。 該帳戶已啟用連續備份原則。 連續備份會設定於 Continuous7days
層:
New-AzCosmosDBAccount `
-ResourceGroupName "MyRG" `
-Location "West US" `
-BackupPolicyType Continuous `
-ContinuousTier Continuous7Days `
-Name "pitracct" `
-ApiKind "Sql"
適用於 MongoDB 的 API
下列 Cmdlet 是設定了 Continuous30days
層的連續備份帳戶範例:
New-AzCosmosDBAccount `
-ResourceGroupName "MyRG" `
-Location "West US" `
-BackupPolicyType Continuous `
-ContinuousTier Continuous30Days `
-Name "Pitracct" `
-ApiKind "MongoDB" `
-ServerVersion "3.6"
API for Table 帳戶
若要佈建具有連續備份的帳戶,請連同一般佈建命令新增引數 -BackupPolicyType Continuous
。
下列 Cmdlet 是使用 Continuous7days
層的連續備份原則範例:
New-AzCosmosDBAccount `
-ResourceGroupName "MyRG" `
-Location "West US" `
-BackupPolicyType Continuous `
-ContinuousTier Continuous7Days `
-Name "pitracct" `
-ApiKind "Table"
API for Gremlin 帳戶
若要佈建具有連續備份的帳戶,請連同一般佈建命令新增引數 -BackupPolicyType Continuous
。
下列 Cmdlet 是設定了 Continuous30days
層的連續備份原則帳戶範例:
New-AzCosmosDBAccount `
-ResourceGroupName "MyRG" `
-Location "West US" `
-BackupPolicyType Continuous `
-ContinuousTier Continuous30Days `
-Name "pitracct" `
-ApiKind "Gremlin"
使用 Azure CLI 來佈建
對 PowerShell 和 CLI 命令而言,層級值是選用的,若未提供,帳戶備份將會保留 30 天。 層級會以 Continuous7Days
或 Continuous30Days
來表示。
佈建帳戶之前,請先使用下列步驟安裝 Azure CLI:
安裝最新版的 Azure CLI,請參閱 Azure CLI
登入並選取訂用帳戶
- 使用
az login
命令登入您的 Azure 帳戶。 - 使用
az account set -s <subscriptionguid>
命令選取必要的訂閱。
- 使用
API for NoSQL 帳戶
若要佈建具有連續備份的 API for NoSQL 帳戶,應連同一般佈建命令傳遞額外的引數 --backup-policy-type Continuous
。 下列命令是名為 Pitracct 且具有連續備份原則和 Continuous7days
層的單一區域寫入帳戶範例:
az cosmosdb create \
--name Pitracct \
--resource-group MyRG \
--backup-policy-type Continuous \
--continuous-tier "Continuous7Days" \
--default-consistency-level Session \
--locations regionName="West US"
適用於 MongoDB 的 API
下列命令會顯示名為 Pitracct 且具有連續備份原則和 Continuous30days
層的單一區域寫入帳戶範例:
az cosmosdb create \
--name Pitracct \
--kind MongoDB \
--resource-group MyRG \
--server-version "3.6" \
--backup-policy-type Continuous \
--continuous-tier "Continuous30Days" \
--default-consistency-level Session \
--locations regionName="West US"
API for Table 帳戶
下列命令會顯示名為 Pitracct 且具有連續備份原則和 Continuous30days
層的單一區域寫入帳戶範例:
az cosmosdb create \
--name Pitracct \
--kind GlobalDocumentDB \
--resource-group MyRG \
--capabilities EnableTable \
--backup-policy-type Continuous \
--continuous-tier "Continuous30Days" \
--default-consistency-level Session \
--locations regionName="West US"
API for Gremlin 帳戶
下列命令會舉例說明名為 Pitracct 且具有連續備份原則和 Continuous7days
層的單一區域寫入帳戶,此帳戶建立於 MyRG 資源群組底下的美國西部區域內:
az cosmosdb create \
--name Pitracct \
--kind GlobalDocumentDB \
--resource-group MyRG \
--capabilities EnableGremlin \
--backup-policy-type Continuous \
--continuous-tier "Continuous7Days" \
--default-consistency-level Session \
--locations regionName="West US"
使用 Resource Manager 範本佈建
您可以使用 Azure Resource Manager 範本來部署具有連續模式的 Azure Cosmos DB 帳戶。 定義用以佈建帳戶的範本時,請包含 backupPolicy
和層級參數,如下列範例所示,層級可以是 Continuous7Days
或 Continuous30Days
:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "ademo-pitr1",
"type": "Microsoft.DocumentDB/databaseAccounts",
"apiVersion": "2023-04-15",
"location": "West US",
"properties": {
"locations": [
{
"locationName": "West US"
}
],
"backupPolicy":{
"type":"Continuous",
"continuousModeProperties":{
"tier":"Continuous7Days"
}
}
"databaseAccountOfferType": "Standard"
} }
接下來,使用 Azure PowerShell 或 CLI 來部署範本。 下列範例示範如何使用 CLI 命令來部署範本:
az deployment group create -g <ResourceGroup> --template-file <ProvisionTemplateFilePath>