Migrar uma conta do Azure Cosmos DB do modo de backup periódico para contínuo

Contas do Azure Cosmos DB com política de backup de modo periódico podem ser migradas para o modo contínuo usando o portal do Azure, a CLI do Azure, o Azure PowerShell ou os modelos Bicep. A migração do modo periódico para o contínuo é unidirecional e não é reversível. Depois de migrar do modo periódico para o modo contínuo, você obtém os benefícios do modo contínuo.

Principais motivos para migrar para o modo contínuo:

  • Restaure os dados por conta própria usando o portal do Azure, a CLI ou o PowerShell.
  • Restaure para um segundo específico na última janela de 30 dias ou 7 dias.
  • Verifique se os backups são consistentes entre fragmentos ou intervalos de chaves de partição.
  • Restaure um contêiner, um banco de dados ou a conta completa após a exclusão ou alterações.
  • Selecione eventos no contêiner, no banco de dados ou na conta e escolha quando iniciar a restauração.

Observação

A migração é unidirecional e não pode ser revertida. Depois de migrar do modo periódico para o modo contínuo, você não poderá alternar de volta.

Você pode migrar uma conta para o modo de backup contínuo somente se essas condições forem verdadeiras. Além disso, verifique as limitações de restauração pontual antes de migrar:

  • A conta é API para NoSQL, Table, Gremlin ou MongoDB.
  • A conta nunca teve o Link do Azure Synapse desabilitado para um contêiner.

Se a conta usar chaves gerenciadas pelo cliente, declare uma identidade gerenciada (atribuída pelo sistema ou atribuída pelo usuário) na política de acesso do Key Vault e defina-a como a identidade padrão na conta.

Importante

Depois de migrar sua conta para o modo de backup contínuo, o custo pode ser alterado em comparação com o modo de backup periódico. A escolha entre 30 dias e sete dias também afeta o custo do backup. Para obter detalhes, consulte o preço do modo de backup contínuo.

Pré-requisitos

  • Uma conta do Azure Cosmos DB
  • A Microsoft.DocumentDB/databaseAccounts/write permissão de controle de acesso baseada em função para a conta que está sendo migrada
  • Versão mais recente da CLI do Azure ou do Azure PowerShell

Migrar usando o portal

Use as seguintes etapas para migrar sua conta do backup periódico para o modo de backup contínuo:

  1. Entre na CLI do Azure.

    az login
    
  2. Migre a conta para a camada continuous30days ou continuous7days.

    az cosmosdb update \
        --resource-group "<resource-group-name>" \
        --name "<account-name>" \
        --backup-policy-type "Continuous"
    
    az cosmosdb update \
        --resource-group "<resource-group-name>" \
        --name "<account-name>" \
        --backup-policy-type "Continuous" \
        --continuous-tier "Continuous7Days"
    

    Observação

    Se você não fornecer um valor de camada, o padrão será continuous30days.

  3. Depois que a migração for concluída com êxito, a saída mostrará o objeto backupPolicy, que inclui a propriedade type com um valor de Continuous.

    {
      ...
      "backupPolicy": {
        "continuousModeProperties": {
          "tier": "Continuous7Days"
        },
        "migrationState": null,
        "type": "Continuous"
      },
      ...
    }
    

Verificar o status da migração

Use a CLI do Azure para verificar o status de uma migração existente.

  1. Execute o comando a seguir para obter as propriedades da conta do Azure Cosmos DB.

    az cosmosdb show \
        --resource-group "<resource-group-name>" \
        --name "<account-name>" \
    
  2. Verifique as propriedades e targetType as status propriedades do backupPolicy objeto. O status deve ser InProgress após o início da migração.

    {
      ...
      "backupPolicy": {
        ...
        "migrationState": {
          "status": "InProgress",
          "targetType": "Continuous"
        },
        "type": "Periodic"
      },
      ...
    }
    
  3. Quando a migração é concluída, o tipo de backup é alterado Continuous e inclui a camada escolhida. Se uma camada não fosse fornecida, a camada seria definida como Continuous30Days. Execute o mesmo az cosmosdb show comando novamente para verificar o status.

    {
      ...
      "backupPolicy": {
        "continuousModeProperties": {
          "tier": "Continuous7Days"
        },
        "migrationState": null,
        "type": "Continuous"
      },
      ...
    }
    

Alterar as camadas de modo contínuo

Você pode alternar entre Continuous30Days o Continous7Days Azure PowerShell, a CLI do Azure ou o portal do Azure.

O seguinte comando da CLI do Azure ilustra a mudança de uma conta existente para Continous7Days:

az cosmosdb update \
    --resource-group "<resource-group-name>" \
    --name "<account-name>" \
    --backup-policy-type "Continuous" \
    --continuous-tier "Continuous7Days"

Você também pode usar um modelo do ARM em um método semelhante ao uso da CLI do Azure e do Azure PowerShell.

Observação

Ao mudar da camada de 30 dias para a camada de 7 dias, você perde imediatamente a capacidade de restaurar dados com mais de sete dias. Ao alternar da camada de 7 dias para a camada de 30 dias, você só poderá restaurar dados dos últimos sete dias até que novos backups se acumulem. Você pode verificar o tempo de restauração mais antigo disponível usando o Azure PowerShell ou a CLI do Azure. Todas as alterações de preço das camadas de alternância entrarão em vigor imediatamente.

Migrar para o backup contínuo usando o Bicep

Para migrar para o modo de backup contínuo usando um modelo Bicep e o Azure Resource Manager, localize a seção backupPolicy do seu modelo e atualize a type propriedade.

  1. Considere este modelo de exemplo que tem uma Periodic política de backup:

    resource azureCosmosDBAccount 'Microsoft.DocumentDB/databaseAccounts@2025-04-15' = {
      name: '<account-name>'
      properties: {
        // Other required properties omitted for brevity
        backupPolicy: {
          type: 'Periodic'
          periodicModeProperties: {
            backupIntervalInMinutes: 240 // 4 hours
            backupRetentionIntervalInHours: 48 // 2 days
          }
        }
      }
    }
    
  2. Atualize o modelo de exemplo para usar Continuous o modo de backup na camada de 7 dias:

    resource azureCosmosDBAccount 'Microsoft.DocumentDB/databaseAccounts@2025-04-15' = {
      name: '<account-name>'
      properties: {
        // Other required properties omitted for brevity
        backupPolicy: {
          type: 'Continuous'
          continuousModeProperties: {
            tier: 'Continuous7Days'
          }
        }
      }
    }
    
  3. Implante o modelo usando o Azure PowerShell ou a CLI. O exemplo a seguir mostra como implantar o modelo com um comando da CLI:

    az deployment group create \
        --resource-group "<resource-group-name>" \
        --template-file "<template-file-path>"