Restaurar um contêiner ou banco de dados excluído para a mesma conta do Azure Cosmos DB
- Artigo
APLICA-SE A: NoSQL MongoDB Gremlin Tabela
O recurso de restauração point-in-time da mesma conta do Azure Cosmos DB ajuda você a se recuperar de uma exclusão acidental de um contêiner ou banco de dados. Esse recurso restaura o banco de dados ou contêiner excluído para a mesma conta existente em qualquer região em que existam backups. O modo de backup contínuo permite restaurar para qualquer ponto de tempo nos últimos 30 dias.
Pré-requisitos
- Uma subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta do Azure gratuita antes de começar.
- Uma conta do Azure Cosmos DB. Você pode escolher uma das seguintes opções para uma conta do Azure Cosmos DB:
- Use uma conta existente do Azure Cosmos DB.
- Crie uma nova conta do Azure Cosmos DB na sua subscrição do Azure.
- Crie uma conta gratuita Experimente o Azure Cosmos DB sem compromisso.
Restaurar um contêiner ou banco de dados excluído
Use o portal do Azure, a CLI do Azure, o Azure PowerShell ou um modelo do Azure Resource Manager para restaurar um contêiner ou banco de dados excluído na mesma conta existente.
Use o portal do Azure para restaurar um contêiner ou banco de dados excluído. Os contentores para crianças também são restaurados.
Aceda ao portal do Azure.
Vá para sua conta do Azure Cosmos DB e vá para a página Restauração Point In Time .
Nota
A página de restauração no portal do Azure é preenchida somente se você tiver a
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read
permissão. Para saber mais sobre essa permissão, consulte Permissões de backup e restauração.Selecione a guia Restaurar para a mesma conta .
Em Banco de dados, insira uma consulta de pesquisa para filtrar o feed de eventos para eventos de exclusão relevantes para um contêiner ou um banco de dados.
Em seguida, especifique os valores Start e End para criar uma janela de tempo a ser usada para filtrar eventos de exclusão.
Nota
O filtro Iniciar está limitado a, no máximo, 30 dias antes da data atual.
Selecione Atualizar para atualizar a lista de eventos para diferentes tipos de recursos com os filtros aplicados.
Verifique a hora e selecione Restaurar para iniciar a restauração do recurso selecionado que foi excluído anteriormente.
Importante
Não mais do que três operações de restauração podem estar ativas a qualquer momento na mesma conta. A exclusão da conta de origem enquanto uma operação de restauração está em andamento pode resultar na falha da operação de restauração.
Nota
O feed de eventos exibe recursos como Não restaurável. O feed fornece mais informações sobre por que o recurso não pode ser restaurado. Na maioria dos casos, você deve restaurar o banco de dados pai antes de poder restaurar qualquer um dos contêineres filho do banco de dados.
Depois de iniciar uma operação de restauração, acompanhe a operação usando a área de notificações do portal do Azure. A notificação fornece o status do recurso que está sendo restaurado. Enquanto a restauração está em andamento, o status do contêiner está Criando. Após a conclusão da operação de restauração, o status muda para Online.
Use a CLI do Azure para restaurar um contêiner ou banco de dados excluído. Os contentores para crianças também são restaurados.
Importante
A CLI do Azure versão 2.58.0 ou posterior é necessária para acessar o comando de restauração na conta.
Recupere uma lista de todas as contas de banco de dados restauráveis ativas e excluídas usando az cosmosdb restorable-database-account list:
az cosmosdb restorable-database-account list \ --account-name <name-of-account>
[ { "accountName": "deleted-account-1", "apiType": "Sql", "creationTime": "2020-08-02T22:23:00.095870+00:00", "deletionTime": "2020-08-02T22:26:13.483175+00:00", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234", "location": "West US", "name": "abcd1234-d1c0-4645-a699-abcd1234", "restorableLocations": [ { "locationName": "West US" }, { "locationName": "East US" } ] } ]
Use az cosmosdb sql restorable-database list para listar todas as versões restauráveis de bancos de dados para contas ativas:
az cosmosdb sql restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>
Nota
Listar todos os eventos de exclusão de banco de dados restauráveis permite que você escolha o banco de dados certo em um cenário no qual o tempo real de existência é desconhecido. Se o feed de eventos contiver o tipo de operação Excluir em sua resposta, ele será um banco de dados excluído e poderá ser restaurado na mesma conta. O carimbo de data/hora de restauração pode ser definido como qualquer carimbo de data/hora antes do carimbo de data/hora de exclusão e dentro da janela de retenção.
Use az cosmosdb sql restorable-container list para listar todas as versões de contêineres restauráveis em um banco de dados específico:
az cosmosdb sql restorable-container list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>
Nota
Listar todos os eventos de exclusão de banco de dados restauráveis permite que você escolha o contêiner certo em um cenário no qual o tempo real de existência é desconhecido. Se o feed de eventos contiver o tipo de operação Excluir em sua resposta, ele será um contêiner excluído e poderá ser restaurado na mesma conta. O carimbo de data/hora de restauração pode ser definido como qualquer carimbo de data/hora antes do carimbo de data/hora de exclusão e dentro da janela de retenção.
Inicie uma operação de restauração para um banco de dados excluído usando az cosmosdb sql database restore. O carimbo de data/hora de restauração é opcional, se não for fornecido que a última instância excluída do banco de dados seja restaurada.
az cosmosdb sql database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Inicie uma operação de restauração para um contêiner excluído usando az cosmosdb sql container restore. O carimbo de data/hora de restauração é opcional, se não for fornecido que a última instância excluída do contêiner seja restaurada.
az cosmosdb sql container restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --database-name <database-name> \ --name <container-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Recupere uma lista de todas as contas de banco de dados restauráveis ativas e excluídas usando az cosmosdb restorable-database-account list:
az cosmosdb restorable-database-account list \ --account-name <name-of-account>
[ { "accountName": "deleted-account-1", "apiType": "Sql", "creationTime": "2020-08-02T22:23:00.095870+00:00", "deletionTime": "2020-08-02T22:26:13.483175+00:00", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234", "location": "West US", "name": "abcd1234-d1c0-4645-a699-abcd1234", "restorableLocations": [ { "locationName": "West US" }, { "locationName": "East US" } ] } ]
Use az cosmosdb mongodb restorable-database list para listar todas as versões restauráveis de bancos de dados para contas ativas:
az cosmosdb mongodb restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>
Use az cosmosdb mongodb restorable-collection list para listar todas as versões de coleções restauráveis em um banco de dados específico:
az cosmosdb mongodb restorable-collection list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>
Inicie uma operação de restauração para um banco de dados excluído usando az cosmosdb mongodb database restore. O carimbo de data/hora de restauração é opcional, se não tiver fornecido que a última instância excluída do banco de dados seja restaurada.
az cosmosdb mongodb database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> --disable-ttl True
Inicie uma operação de restauração para uma coleção excluída usando az cosmosdb mongodb collection restore,restore timestamp é opcional, se não for fornecido a última instância excluída da coleção é restaurada.
az cosmosdb mongodb collection restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --database-name <database-name> \ --name <container-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Recupere uma lista de todas as contas de banco de dados restauráveis ativas e excluídas usando az cosmosdb restorable-database-account list:
az cosmosdb restorable-database-account list \ --account-name <name-of-account>
[ { "accountName": "deleted-account-1", "apiType": "Sql", "creationTime": "2020-08-02T22:23:00.095870+00:00", "deletionTime": "2020-08-02T22:26:13.483175+00:00", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234", "location": "West US", "name": "abcd1234-d1c0-4645-a699-abcd1234", "restorableLocations": [ { "locationName": "West US" }, { "locationName": "East US" } ] } ]
Use az cosmosdb gremlin restorable-database list para listar todas as versões restauráveis de bancos de dados para contas reais:
az cosmosdb gremlin restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>
Use az cosmosdb gremlin restorable-graph list para listar todas as versões de gráficos restauráveis dentro de um banco de dados específico:
az cosmosdb gremlin restorable-graph list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>
Inicie uma operação de restauração para um banco de dados excluído usando az cosmosdb gremlin database restore. O carimbo de data/hora de restauração é opcional, se não for fornecido que a última instância excluída do banco de dados seja restaurada.
az cosmosdb gremlin database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Inicie uma operação de restauração para um gráfico excluído usando az cosmosdb gremlin graph restore. O carimbo de data/hora de restauração é opcional, se não for fornecido que a última instância excluída do gráfico seja restaurada.
az cosmosdb gremlin graph restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --database-name <database-name> \ --name <graph-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Recupere uma lista de todas as contas de banco de dados restauráveis ativas e excluídas usando az cosmosdb restorable-database-account list:
az cosmosdb restorable-database-account list \ --account-name <name-of-account>
[ { "accountName": "deleted-account-1", "apiType": "Sql", "creationTime": "2020-08-02T22:23:00.095870+00:00", "deletionTime": "2020-08-02T22:26:13.483175+00:00", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234", "location": "West US", "name": "abcd1234-d1c0-4645-a699-abcd1234", "restorableLocations": [ { "locationName": "West US" }, { "locationName": "East US" } ] } ]
Use az cosmosdb table restorable-table list para listar todas as versões restauráveis de tabelas para contas reais:
az cosmosdb table restorable-table list \ --instance-id <instance-id-of-account> \ --location <location>
Inicie uma operação de restauração para uma tabela excluída usando az cosmosdb table restore. O carimbo de data/hora de restauração é opcional, se não for fornecido que a última instância excluída da tabela seja restaurada.
az cosmosdb table restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --table-name <table-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Use o Azure PowerShell para restaurar um contêiner ou banco de dados excluído. Contêineres filho e bancos de dados também são restaurados.
Importante
O módulo Az.Cosmos DB para Azure PowerShell versão 1.14.1 ou posterior é necessário para acessar os cmdlets de restauração na conta.
Recupere uma lista de todas as contas de banco de dados restauráveis ativas e excluídas usando o cmdlet [Get-AzCosmosDBRestorableDatabaseAccount](/powershell/module/az.cosmosdb/get-azCosmos DBrestorabledatabaseaccount):
Get-AzCosmosDBRestorableDatabaseAccount
Id : /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234 DatabaseAccountInstanceId : abcd1234-d1c0-4645-a699-abcd1234 Location : West US DatabaseAccountName : deleted-account-1 CreationTime : 8/2/2020 10:23:00 PM DeletionTime : 8/2/2020 10:26:13 PM ApiType : Sql RestorableLocations : {West US, East US}
Nota
A conta tem
CreationTime
ouDeletionTime
campos. Estes campos também existem para as regiões. Esses horários permitem que você escolha a região correta e um intervalo de tempo válido para usar ao restaurar um recurso.Use o cmdlet Get-AzCosmosDBSqlRestorableDatabase para listar todas as versões restauráveis de bancos de dados para contas ativas:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBSqlRestorableDatabase @parameters
Nota
Listar todos os eventos de exclusão de banco de dados restauráveis permite que você escolha o banco de dados certo em um cenário em que o tempo real de existência é desconhecido. Se o feed de eventos contiver o tipo de operação Excluir em sua resposta, ele será um banco de dados excluído e poderá ser restaurado na mesma conta. O carimbo de data/hora de restauração pode ser definido como qualquer carimbo de data/hora antes do carimbo de data/hora de exclusão e dentro da janela de retenção.
Use o cmdlet Get-AzCosmosDBSqlRestorableContainer para listar todas as versões de contêineres restauráveis em um banco de dados específico:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBSqlRestorableContainer @parameters
Nota
Listar todos os eventos de exclusão de banco de dados restauráveis permite que você escolha o contêiner certo em um cenário em que o tempo real de existência é desconhecido. Se o feed de eventos contiver o tipo de operação Excluir em sua resposta, ele será um contêiner excluído e poderá ser restaurado na mesma conta. O carimbo de data/hora de restauração pode ser definido como qualquer carimbo de data/hora antes do carimbo de data/hora de exclusão e dentro da janela de retenção.
Inicie uma operação de restauração para um banco de dados excluído usando o cmdlet Restore-AzCosmos DBSqlDatabase. Restaurar carimbo de data/hora é opcional. Na ausência desse carimbo de data/hora, a última instância excluída do banco de dados é restaurada.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" } Restore-AzCosmos DBSqlDatabase @parameters
Inicie uma operação de restauração para um contêiner excluído usando o cmdlet Restore-AzCosmos DBSqlContainer. Restaurar carimbo de data/hora é opcional. Na ausência desse carimbo de data/hora, a última instância excluída do contêiner é restaurada.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<container-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl= $true } Restore-AzCosmos DBSqlContainer @parameters
Recupere uma lista de todas as contas de banco de dados restauráveis ativas e excluídas usando o cmdlet Get-AzCosmosDBRestorableDatabaseAccount :
Get-AzCosmosDBRestorableDatabaseAccount
Id : /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234 DatabaseAccountInstanceId : abcd1234-d1c0-4645-a699-abcd1234 Location : West US DatabaseAccountName : deleted-account-1 CreationTime : 8/2/2020 10:23:00 PM DeletionTime : 8/2/2020 10:26:13 PM ApiType : Sql RestorableLocations : {West US, East US}
Nota
A conta tem
CreationTime
ouDeletionTime
campos. Estes campos também existem para as regiões. Esses horários permitem que você escolha a região correta e um intervalo de tempo válido para usar ao restaurar um recurso.Use Get-AzCosmosDBMongoDBRestorableDatabase para listar todas as versões restauráveis de bancos de dados para contas ativas:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBMongoDBRestorableDatabase @parameters
Use o cmdlet Get-AzCosmosDBMongoDBRestorableCollection para listar todas as versões de coleções restauráveis em um banco de dados específico. Restaurar carimbo de data/hora é opcional. Na ausência desse carimbo de data/hora, a última instância excluída da coleta é restaurada.
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBMongoDBRestorableCollection @parameters
Inicie uma operação de restauração para um banco de dados excluído usando o cmdlet Restore-AzCosmos DBMongoDBDatabase:
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBMongoDBDatabase @parameters
Inicie uma operação de restauração para uma coleção excluída usando o cmdlet Restore-AzCosmos DBMongoDBCollection . A restauração do carimbo de data/hora é opcional, se não for fornecida a última instância excluída da coleção for restaurada.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<collection-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBMongoDBCollection @parameters
Recupere uma lista de todas as contas de banco de dados restauráveis ativas e excluídas usando o cmdlet Get-AzCosmosDBRestorableDatabaseAccount :
Get-AzCosmosDBRestorableDatabaseAccount
Id : /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234 DatabaseAccountInstanceId : abcd1234-d1c0-4645-a699-abcd1234 Location : West US DatabaseAccountName : deleted-account-1 CreationTime : 8/2/2020 10:23:00 PM DeletionTime : 8/2/2020 10:26:13 PM ApiType : Sql RestorableLocations : {West US, East US}
Nota
A conta tem
CreationTime
ouDeletionTime
campos. Estes campos também existem para as regiões. Esses horários permitem que você escolha a região correta e um intervalo de tempo válido para usar ao restaurar um recurso.Use o cmdlet Get-AzCosmosDBGremlinRestorableDatabase para listar todas as versões restauráveis de bancos de dados para contas ativas:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBGremlinRestorableDatabase @parameters
Use o cmdlet Get-AzCosmosDBGremlinRestorableGraph para listar todas as versões de gráficos restauráveis que estão em um banco de dados específico:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBGremlinRestorableGraph @parameters
Inicie uma operação de restauração para um banco de dados excluído usando o cmdlet Restore-AzCosmos DBGremlinDatabase, restaurar carimbo de data/hora é opcional, se não desde que a última instância excluída do banco de dados seja restaurada.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBGremlinDatabase @parameters
Inicie uma operação de restauração para um gráfico excluído usando o cmdlet Restore-AzCosmos DBGremlinGraph, restaurar carimbo de data/hora é opcional, se não desde que a última instância excluída do gráfico seja restaurada.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<graph-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBGremlinGraph @parameters
Recupere uma lista de todas as contas de banco de dados restauráveis ativas e excluídas usando o cmdlet [Get-AzCosmosDBRestorableDatabaseAccount](/powershell/module/az.cosmosdb/get-azCosmos DBrestorabledatabaseaccount):
Get-AzCosmosDBRestorableDatabaseAccount
Id : /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234 DatabaseAccountInstanceId : abcd1234-d1c0-4645-a699-abcd1234 Location : West US DatabaseAccountName : deleted-account-1 CreationTime : 8/2/2020 10:23:00 PM DeletionTime : 8/2/2020 10:26:13 PM ApiType : Sql RestorableLocations : {West US, East US}
Nota
A conta tem
CreationTime
ouDeletionTime
campos. Estes campos também existem para as regiões. Esses horários permitem que você escolha a região correta e um intervalo de tempo válido para usar ao restaurar um recurso.Use o cmdlet [Get-AzCosmosDBTableRestorableTable](/powershell/module/az.cosmosdb/get-azCosmos DBtablerestorabletable) para listar todas as versões restauráveis de tabelas para contas ativas:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBTableRestorableTable @parameters
Inicie uma operação de restauração para uma tabela excluída usando o cmdlet Restore-AzCosmos DBTable, restaurar carimbo de data/hora é opcional, se não desde que a última instância excluída da tabela seja restaurada.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<table-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBTable @parameters
Você pode restaurar contêineres e bancos de dados excluídos usando um modelo do Azure Resource Manager.
Crie ou localize um recurso do Azure Cosmos DB em seu modelo. Aqui está um exemplo genérico de um recurso:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "resources": [ { "name": "msdocs-example-arm", "type": "Microsoft.DocumentDB/databaseAccounts", "apiVersion": "2022-02-15-preview", "location": "West US", "properties": { "locations": [ { "locationName": "West US" } ], "backupPolicy": { "type": "Continuous" }, "databaseAccountOfferType": "Standard" } } ] }
Para atualizar o recurso do Azure Cosmos DB em seu modelo:
- Defina
properties.createMode
comorestore
. - Defina um
properties.restoreParameters
objeto. - Defina
properties.restoreParameters.restoreTimestampInUtc
como um carimbo de data/hora UTC. - Defina
properties.restoreParameters.restoreSource
como o identificador de instância da conta que é a origem da operação de restauração.
{ "properties": { "name": "<name-of-database-or-container>", "restoreParameters": { "restoreSource": "<source-account-instance-id>", "restoreTimestampInUtc": "<timestamp>", "restoreWithTtlDisabled": "true" }, "createMode": "Restore" } }
- Defina
Para restaurar um contêiner sql, atualize o seguinte modelo da seguinte maneira:
- Defina resources.name como
<accountname>/databasename>/<containername>
- Defina resources.properties.resource.createMode para restaurar.
- Defina resources.properties.resource.restoreParameters.id nome do contêiner.
- Defina resources.properties.resource.restoreParameters.restoreTimestampInUtc como um carimbo de data/hora UTC.
- Defina resources.properties.resource.restoreParameters.restoreSource como o identificador de instância da conta que é a origem da operação de restauração.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources":[{
"type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers",
"apiVersion": "2023-11-15",
"name": "<accountname>/<databasename>/<containername>",
"properties": {
"resource": {
"id": "<containername>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionid>/providers/Microsoft.DocumentDB/locations/<lowercaselocationwithoutspace>/restorableDatabaseAccounts/<databaseaccountinstanceId>",
"restoreTimestampInUtc": "<restore timestamp is utc iso format>"
},
"createMode": "Restore"
}
}
}
]
}
Para restaurar um banco de dados sql, atualize o seguinte modelo da seguinte maneira:
- Defina resources.name como
<accountname>/databasename>
- Defina resources.properties.resource.createMode para restaurar.
- Defina resources.properties.resource.restoreParameters.id nome do banco de dados.
- Defina resources.properties.resource.restoreParameters.restoreTimestampInUtc como um carimbo de data/hora UTC.
- Defina resources.properties.resource.restoreParameters.restoreSource como o identificador de instância da conta que é a origem da operação de restauração.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases",
"apiVersion": "2023-11-15",
"name": "<account name>/<database name>",
"properties": {
"resource": {
"id": "<database name>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionId>/providers/Microsoft.DocumentDB/locations/<location>/restorableDatabaseAccounts/<databaseaccountinstanceid>",
"restoreTimestampInUtc": "restore timestamp"
},
"createMode": "Restore"
}
}
}
]
}
{
"properties": {
"name": "<name-of-database-or-collection>",
"restoreParameters": {
"restoreSource": "<source-account-instance-id>",
"restoreTimestampInUtc": "<timestamp>",
"restoreWithTtlDisabled": "true"
},
"createMode": "Restore"
}
}
Para restaurar uma coleção mongo, atualize o seguinte modelo da seguinte maneira:
- Defina resources.name como
<accountname>/databasename>/<collectionname>
- Defina resources.properties.resource.createMode para restaurar.
- Defina resources.properties.resource.restoreParameters.id nome da coleção.
- Defina resources.properties.resource.restoreParameters.restoreTimestampInUtc como um carimbo de data/hora UTC.
- Defina resources.properties.resource.restoreParameters.restoreSource como o identificador de instância da conta que é a origem da operação de restauração.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/ mongoDBDatabases/collections",
"apiVersion": "2023-11-15",
"name": "<accountname>/<databasename>/<collectionname>",
"properties": {
"resource": {
"id": "<collectionname>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionid>/providers/Microsoft.DocumentDB/locations/<lowercaselocationwithoutspace>/restorableDatabaseAccounts/<databaseaccountinstanceId>",
"restoreTimestampInUtc": "<restore timestamp is utc iso format>"
},
"createMode": "Restore"
}
}
}
]
}
Para restaurar um banco de dados mongo, atualize o seguinte modelo da seguinte maneira:
- Defina resources.name como
<accountname>/databasename>
- Defina resources.properties.resource.createMode para restaurar.
- Defina resources.properties.resource.restoreParameters.id nome do banco de dados.
- Defina resources.properties.resource.restoreParameters.restoreTimestampInUtc como um carimbo de data/hora UTC.
- Defina resources.properties.resource.restoreParameters.restoreSource como o identificador de instância da conta que é a origem da operação de restauração.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/mongoDBDatabases",
"apiVersion": "2023-11-15",
"name": "<account name>/<database name>",
"properties": {
"resource": {
"id": "<database name>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionId>/providers/Microsoft.DocumentDB/locations/<location>/restorableDatabaseAccounts/<databaseaccountinstanceid>",
"restoreTimestampInUtc": "restore timestamp"
},
"createMode": "Restore"
}
}
}
]
}
{
"properties": {
"name": "<name-of-database-or-graph>",
"restoreParameters": {
"restoreSource": "<source-account-instance-id>",
"restoreTimestampInUtc": "<timestamp>",
"restoreWithTtlDisabled": "true"
},
"createMode": "Restore"
}
}
Para restaurar um gráfico gremlin, atualize o seguinte modelo da seguinte maneira:
- Defina resources.name como
<accountname>/databasename>/<graphname>
- Defina resources.properties.resource.createMode para restaurar.
- Defina resources.properties.resource.restoreParameters.id nome do gráfico.
- Defina resources.properties.resource.restoreParameters.restoreTimestampInUtc como um carimbo de data/hora UTC.
- Defina resources.properties.resource.restoreParameters.restoreSource como o identificador de instância da conta que é a origem da operação de restauração.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs",
"apiVersion": "2023-11-15",
"name": "<accountname>/<databasename>/<graphname>",
"properties": {
"resource": {
"id": "<graphname>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionid>/providers/Microsoft.DocumentDB/locations/<lowercaselocationwithoutspace>/restorableDatabaseAccounts/<databaseaccountinstanceId>",
"restoreTimestampInUtc": "<restore timestamp is utc iso format>"
},
"createMode": "Restore"
}
}
}
]
}
Para restaurar um banco de dados gremlin, atualize o seguinte modelo da seguinte maneira:
- Defina resources.name como
<accountname>/databasename>
- Defina resources.properties.resource.createMode para restaurar.
- Defina resources.properties.resource.restoreParameters.id nome do banco de dados.
- Defina resources.properties.resource.restoreParameters.restoreTimestampInUtc como um carimbo de data/hora UTC.
- Defina resources.properties.resource.restoreParameters.restoreSource como o identificador de instância da conta que é a origem da operação de restauração.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases",
"apiVersion": "2023-11-15",
"name": "<account name>/<database name>",
"properties": {
"resource": {
"id": "<database name>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionId>/providers/Microsoft.DocumentDB/locations/<location>/restorableDatabaseAccounts/<databaseaccountinstanceid>",
"restoreTimestampInUtc": "restore timestamp"
},
"createMode": "Restore"
}
}
}
]
}
{
"properties": {
"name": "<name-of-table>",
"restoreParameters": {
"restoreSource": "<source-account-instance-id>",
"restoreTimestampInUtc": "<timestamp>",
"restoreWithTtlDisabled": "true"
},
"createMode": "Restore"
}
}
Para restaurar uma tabela, atualize o seguinte modelo da seguinte maneira:
- Defina resources.name como
<accountname>/tablename>
- Defina resources.properties.resource.createMode para restaurar.
- Defina resources.properties.resource.restoreParameters.id nome da tabela.
- Defina resources.properties.resource.restoreParameters.restoreTimestampInUtc como um carimbo de data/hora UTC.
- Defina resources.properties.resource.restoreParameters.restoreSource como o identificador de instância da conta que é a origem da operação de restauração.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/tables",
"apiVersion": "2023-11-15",
"name": "<account name>/<table name>",
"properties": {
"resource": {
"id": "<table name>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionId>/providers/Microsoft.DocumentDB/locations/<location>/restorableDatabaseAccounts/<databaseaccountinstanceid>",
"restoreTimestampInUtc": "restore timestamp"
},
"createMode": "Restore"
}
}
}
]
}
Nota
Use az cosmosdb restorable-database-account list para recuperar uma lista de identificadores de instância para todas as contas de banco de dados restauráveis ativas e excluídas.
Implante o modelo usando az deployment group create:
az deployment group create \ --resource-group <resource-group-name> \ --template-file <template-filename>
Controlar o status de uma operação de restauração
Quando uma restauração point-in-time é iniciada para um contêiner ou banco de dados excluído, a operação é identificada como uma operação de restauração InAccount no recurso.
Para obter uma lista de operações de restauração para um recurso específico, filtre o log de atividades da conta usando o filtro de pesquisa InAccount Restore Deleted e um filtro de tempo. A lista que retorna inclui o campo UserPrincipalName , que identifica o usuário que iniciou a operação de restauração. Para obter mais informações sobre como acessar logs de atividades, consulte Auditar ações de restauração point-in-time.
Atualmente, para obter o log de atividades da conta, você deve usar o portal do Azure. Use o filtro de pesquisa InAccount Restore Deleted e um filtro de tempo.
Atualmente, para obter o log de atividades da conta, você deve usar o portal do Azure. Use o filtro de pesquisa InAccount Restore Deleted e um filtro de tempo.
Atualmente, para obter o log de atividades da conta, você deve usar o portal do Azure. Use o filtro de pesquisa InAccount Restore Deleted e um filtro de tempo.
Próximos passos
- Habilite o backup contínuo usando o portal do Azure, o Azure PowerShell, a CLI do Azure ou o Azure Resource Manager.
- Saiba como migrar uma conta do backup periódico para o backup contínuo.
- Analise o modelo de recursos do modo de backup contínuo.
- Gerencie as permissões necessárias para restaurar dados usando o modo de backup contínuo.
Comentários
Esta página foi útil?