佈建具有連續備份和時間點還原功能的 Azure Cosmos DB 帳戶

適用於:NoSQL MongoDB

Azure Cosmos DB 的時間點還原功能可協助您從容器內的意外變更復原,還原已刪除的資源,或還原至任何區域 (備份存在於其中)。 連續備份模式可讓您還原至過去 30 天或 7 天內的任何時間點。 您可以回到多久以前取決於帳戶的連續模式層級。

本文說明如何使用 Azure 入口網站PowerShellCLIResource Manager 範本,佈建具有連續備份和時間點還原功能的帳戶。

注意

只有在下列條件成立時,才能佈建連續備份模式帳戶:

  • 帳戶屬於 API for NoSQL 或 API for MongoDB 類型。
  • 帳戶屬於 API for Table 或 API for Gremlin 類型。
  • 帳戶具有單一寫入區域。

使用 Azure 入口網站佈建

建立新的 Azure Cosmos DB 帳戶時,請在 [備份原則] 索引標籤中選擇 [連續] 模式,為新帳戶啟用時間點還原功能。 使用時間點還原時,資料會還原至新帳戶,您目前無法還原至現有帳戶。

Provision an Azure Cosmos DB account with continuous backup configuration.

使用 Azure PowerShell 佈建

針對 PowerShell 和 CLI 命令,如果尚未提供層級值,則該值為選擇性值。 如果未提供,帳戶備份將會保留 30 天。 層級會以 Continuous7Days 值或 Continuous30Days 值來表示。

  1. 安裝最新版的 Azure PowerShell

    • 在佈建帳戶之前,請先安裝任何高於 6.2.0 版的 Azure PowerShell。 如需最新版 Azure PowerShell 的詳細資訊,請參閱最新版的 Azure PowerShell
    • 若要佈建 Continuous7Days 層,您必須執行 Install-Module -Name Az.CosmosDB -AllowPrerelease 來安裝模組的預覽版本。
  2. 接下來,連線到您的 Azure 帳戶,然後使用下列命令來選取必要的訂閱:

    1. 使用下列命令登入 Azure:

      Connect-AzAccount
      
    2. 使用下列命令選取特定訂閱:

      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 天。 層級會以 Continuous7DaysContinuous30Days 來表示。

佈建帳戶之前,請先使用下列步驟安裝 Azure CLI:

  1. 安裝最新版的 Azure CLI,請參閱 Azure CLI

  2. 登入並選取訂用帳戶

    • 使用 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 和層級參數,如下列範例所示,層級可以是 Continuous7DaysContinuous30Days

{
  "$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>

下一步