Ripristinare un contenitore o un database eliminato nello stesso account Azure Cosmos DB
- Articolo
SI APPLICA A: NoSQL MongoDB Gremlin Tabella
La funzionalità di ripristino temporizzato nello stesso account di Azure Cosmos DB consente di eseguire il ripristino a seguito di un’eliminazione accidentale di un contenitore o di un database. Questa funzionalità ripristina il database o il contenitore eliminato nello stesso account esistente, in qualsiasi area, in cui sono presenti i backup. La modalità di backup continuo consente di eseguire il ripristino a qualsiasi momento negli ultimi 30 giorni.
Prerequisiti
- Una sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.
- Un account Azure Cosmos DB. È possibile scegliere una delle opzioni seguenti per un account Azure Cosmos DB:
- Usare un account Azure Cosmos DB esistente.
- Creare un nuovo account Azure Cosmos DB nella sottoscrizione di Azure.
- Creare un account di prova gratuito di Azure Cosmos DB senza impegno.
Ripristinare un contenitore o un database eliminato
Usare il portale di Azure, l'interfaccia della riga di comando di Azure, Azure PowerShell o un modello di Azure Resource Manager per ripristinare un contenitore o un database eliminato nello stesso account esistente.
- Azure portal
- Interfaccia della riga di comando di Azure
- Azure PowerShell
- Modello di Azure Resource Manager
Usare il portale di Azure per ripristinare un contenitore o un database eliminato. Vengono ripristinati anche i contenitori figlio.
Vai al portale di Azure.
Accedere all'account Azure Cosmos DB e quindi passare alla pagina Ripristino temporizzato.
Nota
La pagina di ripristino del portale di Azure viene popolata solo se si dispone dell'autorizzazione
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read
. Per altre informazioni su questa autorizzazione, vedere Autorizzazioni di backup e ripristino.Selezionare la scheda Ripristina nello stesso account.
Per Database, immettere una query di ricerca per filtrare il feed eventi in base agli eventi di eliminazione pertinenti per un determinato contenitore o un database.
Specificare quindi i valori Inizio e Fine per creare un intervallo di tempo da usare per filtrare gli eventi di eliminazione.
Nota
Il filtro Inizio è limitato al massimo a 30 giorni prima della data corrente.
Selezionare Aggiorna per aggiornare l'elenco degli eventi per tipi di risorse diversi con i filtri applicati.
Verificare l'ora, quindi selezionare Ripristina per avviare il ripristino della risorsa selezionata, eliminata in precedenza.
Importante
Non più di tre operazioni di ripristino possono essere attive in qualsiasi momento nello stesso account. L'eliminazione dell'account di origine mentre è in corso un'operazione di ripristino potrebbe causare l'errore dell'operazione di ripristino.
Nota
Il feed di eventi mostra le risorse come Non ripristinabili. Il feed fornisce altre informazioni sul motivo per cui la risorsa non può essere ripristinata. Nella maggior parte dei casi, è necessario ripristinare il database padre prima di poter ripristinare uno dei contenitori figlio del database.
Dopo aver avviato un'operazione di ripristino, tenere traccia dell'operazione usando l'area di notifica del portale di Azure. La notifica fornisce lo stato della risorsa da ripristinare. Mentre il ripristino è in corso, lo stato del contenitore è in creazione. Al termine dell'operazione di ripristino, lo stato diventa Online.
Usare l'interfaccia della riga di comando di Azure per ripristinare un contenitore o un database eliminato. Vengono ripristinati anche i contenitori figlio.
Importante
L'interfaccia della riga di comando di Azure versione 2.58.0 o successiva è necessaria per accedere al comando di ripristino in-account.
Recuperare un elenco di tutti gli account di database ripristinabili live ed eliminati 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" } ] } ]
Usare az cosmosdb sql restorable-database list per elencare tutte le versioni ripristinabili dei database degli account live:
az cosmosdb sql restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>
Nota
Elencando tutti gli eventi di eliminazione del database ripristinabili è possibile scegliere il database corretto in uno scenario in cui il tempo effettivo di esistenza non è noto. Se il feed di eventi contiene nella risposta il tipo di operazione Elimina, si tratta di un database eliminato e può essere ripristinato all'interno dello stesso account. Il timestamp di ripristino può essere impostato su qualsiasi timestamp prima del timestamp di eliminazione entro il periodo di memorizzazione.
Usare az cosmosdb sql restorable-container list per elencare tutte le versioni dei contenitori ripristinabili all'interno di un database specifico:
az cosmosdb sql restorable-container list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>
Nota
Elencando tutti gli eventi di eliminazione del database ripristinabili è possibile scegliere il contenitore corretto in uno scenario in cui il tempo effettivo di esistenza non è noto. Se il feed di eventi contiene nella risposta il tipo di operazione Elimina, si tratta di un contenitore eliminato e può essere ripristinato all'interno dello stesso account. Il timestamp di ripristino può essere impostato su qualsiasi timestamp prima del timestamp di eliminazione entro il periodo di memorizzazione.
Avviare un'operazione di ripristino per un database eliminato usando az cosmosdb sql database restore. Il timestamp di ripristino è facoltativo, se non viene fornita l'ultima istanza eliminata del database.
az cosmosdb sql database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Avviare un'operazione di ripristino per un contenitore eliminato usando az cosmosdb sql container restore. Il timestamp di ripristino è facoltativo, se non viene fornita l'ultima istanza eliminata del contenitore.
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
Recuperare un elenco di tutti gli account di database ripristinabili live ed eliminati 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" } ] } ]
Usare az cosmosdb mongodb restorable-database list per elencare tutte le versioni ripristinabili dei database per gli account live:
az cosmosdb mongodb restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>
Usare az cosmosdb mongodb restorable-collection list per elencare tutte le versioni delle raccolte ripristinabili all'interno di un database specifico:
az cosmosdb mongodb restorable-collection list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>
Avviare un'operazione di ripristino per un database eliminato usando az cosmosdb mongodb database restore. Il timestamp di ripristino è facoltativo, se non è stata specificata l'ultima istanza eliminata del database.
az cosmosdb mongodb database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> --disable-ttl True
Avviare un'operazione di ripristino per una raccolta eliminata usando az cosmosdb mongodb collection restore, restore timestamp è facoltativo, se non viene fornita l'ultima istanza eliminata della raccolta.
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
Recuperare un elenco di tutti gli account di database ripristinabili live ed eliminati 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" } ] } ]
Usare az cosmosdb gremlin restorable-database list per elencare tutte le versioni ripristinabili dei database per gli account live:
az cosmosdb gremlin restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>
Usare az cosmosdb gremlin restorable-graph list per elencare tutte le versioni dei grafi ripristinabili all'interno di un database specifico:
az cosmosdb gremlin restorable-graph list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>
Avviare un'operazione di ripristino per un database eliminato usando az cosmosdb gremlin database restore. Il timestamp di ripristino è facoltativo, se non viene fornita l'ultima istanza eliminata del database.
az cosmosdb gremlin database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Avviare un'operazione di ripristino per un grafo eliminato usando az cosmosdb gremlin graph restore. Il timestamp di ripristino è facoltativo, se non viene fornita l'ultima istanza eliminata del grafico.
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
Recuperare un elenco di tutti gli account di database ripristinabili live ed eliminati 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" } ] } ]
Usare az cosmosdb table restorable-table list per elencare tutte le versioni ripristinabili delle tabelle per gli account live:
az cosmosdb table restorable-table list \ --instance-id <instance-id-of-account> \ --location <location>
Avviare un'operazione di ripristino per una tabella eliminata usando az cosmosdb table restore. Il timestamp di ripristino è facoltativo, se non viene specificata l'ultima istanza eliminata della tabella.
az cosmosdb table restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --table-name <table-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Usare Azure PowerShell per ripristinare un contenitore o un database eliminato. Vengono ripristinati anche i contenitori e i database figlio.
Importante
Il modulo Az.Cosmos DB per Azure PowerShell versione 1.14.1 o successiva è necessario per accedere ai cmdlet di ripristino nell'account.
Recuperare un elenco di tutti gli account di database ripristinabili live ed eliminati usando il 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
L'account ha campi
CreationTime
oDeletionTime
. Questi campi sono presenti anche per le aree. Questi tempi consentono di scegliere l'area corretta e un intervallo di tempo valido da usare quando si ripristina una risorsa.Usare il cmdlet Get-AzCosmosDBSqlRestorableDatabase per elencare tutte le versioni ripristinabili dei database per gli account live:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBSqlRestorableDatabase @parameters
Nota
Elencando tutti gli eventi di eliminazione del database ripristinabili è possibile scegliere il database corretto in uno scenario in cui il tempo effettivo di esistenza non è noto. Se il feed di eventi contiene nella risposta il tipo di operazione Elimina, si tratta di un database eliminato e può essere ripristinato all'interno dello stesso account. Il timestamp di ripristino può essere impostato su qualsiasi timestamp prima del timestamp di eliminazione entro il periodo di memorizzazione.
Usare il cmdlet Get-AzCosmosDBSqlRestorableContainer per elencare tutte le versioni dei contenitori ripristinabili all'interno di un database specifico:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBSqlRestorableContainer @parameters
Nota
Elencando tutti gli eventi di eliminazione del database ripristinabili è possibile scegliere il contenitore corretto in uno scenario in cui il tempo effettivo di esistenza non è noto. Se il feed di eventi contiene nella risposta il tipo di operazione Elimina, si tratta di un contenitore eliminato e può essere ripristinato all'interno dello stesso account. Il timestamp di ripristino può essere impostato su qualsiasi timestamp prima del timestamp di eliminazione entro il periodo di memorizzazione.
Avviare un'operazione di ripristino per un database eliminato usando il cmdlet Restore-AzCosmos DBSqlDatabase. Il timestamp di ripristino è facoltativo. In assenza di questo timestamp dell'ultima istanza eliminata del database viene ripristinata.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" } Restore-AzCosmos DBSqlDatabase @parameters
Avviare un'operazione di ripristino per un contenitore eliminato usando il cmdlet Restore-AzCosmos DBSqlContainer. Il timestamp di ripristino è facoltativo. In assenza di questo timestamp dell'ultima istanza eliminata del contenitore viene ripristinata.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<container-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl= $true } Restore-AzCosmos DBSqlContainer @parameters
Recuperare un elenco di tutti gli account di database ripristinabili live ed eliminati usando il 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
L'account ha campi
CreationTime
oDeletionTime
. Questi campi sono presenti anche per le aree. Questi tempi consentono di scegliere l'area corretta e un intervallo di tempo valido da usare quando si ripristina una risorsa.Usare Get-AzCosmosDBMongoDBRestorableDatabase per elencare tutte le versioni ripristinabili dei database per gli account live:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBMongoDBRestorableDatabase @parameters
Usare il cmdlet Get-AzCosmosDBMongoDBRestorableCollection per elencare tutte le versioni delle raccolte ripristinabili all'interno di un database specifico. Il timestamp di ripristino è facoltativo. In assenza di questo timestamp dell'ultima istanza eliminata della raccolta viene ripristinata.
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBMongoDBRestorableCollection @parameters
Avviare un'operazione di ripristino per un database eliminato usando il cmdlet Restore-AzCosmos DBMongoDBDatabase:
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBMongoDBDatabase @parameters
Avviare un'operazione di ripristino per una raccolta eliminata usando il cmdlet Restore-AzCosmos DBMongoDBCollection. Il timestamp di ripristino è facoltativo, se non viene ripristinata l'ultima istanza eliminata della raccolta.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<collection-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBMongoDBCollection @parameters
Recuperare un elenco di tutti gli account di database ripristinabili live ed eliminati usando il 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
L'account ha campi
CreationTime
oDeletionTime
. Questi campi sono presenti anche per le aree. Questi tempi consentono di scegliere l'area corretta e un intervallo di tempo valido da usare quando si ripristina una risorsa.Usare il cmdlet Get-AzCosmosDBGremlinRestorableDatabase per elencare tutte le versioni ripristinabili dei database per gli account live:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBGremlinRestorableDatabase @parameters
Usare il cmdlet Get-AzCosmosDBGremlinRestorableGraph per elencare tutte le versioni dei grafici ripristinabili presenti in un database specifico:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBGremlinRestorableGraph @parameters
Avviare un'operazione di ripristino per un database eliminato usando il cmdlet Restore-AzCosmos DBGremlinDatabase, il timestamp di ripristino è facoltativo, se non viene ripristinata l'ultima istanza eliminata del database.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBGremlinDatabase @parameters
Avviare un'operazione di ripristino per un grafico eliminato usando il cmdlet Restore-AzCosmos DBGremlinGraph, il timestamp di ripristino è facoltativo, se non viene ripristinata l'ultima istanza eliminata del grafo.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<graph-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBGremlinGraph @parameters
Recuperare un elenco di tutti gli account di database ripristinabili live ed eliminati usando il 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
L'account ha campi
CreationTime
oDeletionTime
. Questi campi sono presenti anche per le aree. Questi tempi consentono di scegliere l'area corretta e un intervallo di tempo valido da usare quando si ripristina una risorsa.Usare il cmdlet [Get-AzCosmosDBTableRestorableTable](/powershell/module/az.cosmosdb/get-azCosmos DBtablerestorabletable) per elencare tutte le versioni ripristinabili delle tabelle per gli account live:
$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBTableRestorableTable @parameters
Avviare un'operazione di ripristino per una tabella eliminata usando il cmdlet Restore-AzCosmos DBTable, il timestamp di ripristino è facoltativo, se non viene ripristinata l'ultima istanza eliminata della tabella.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<table-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBTable @parameters
È possibile ripristinare i contenitori e i database eliminati usando un modello di Azure Resource Manager.
Creare o individuare una risorsa di Azure Cosmos DB nel modello. Ecco un esempio generico di risorsa:
{ "$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" } } ] }
Per aggiornare la risorsa di Azure Cosmos DB nel modello:
- Impostare
properties.createMode
surestore
. - Definire un oggetto
properties.restoreParameters
. - Impostare
properties.restoreParameters.restoreTimestampInUtc
su un timestamp UTC. - Impostare
properties.restoreParameters.restoreSource
sull'identificatore dell'istanza dell'account che è l'origine dell'operazione di ripristino.
{ "properties": { "name": "<name-of-database-or-container>", "restoreParameters": { "restoreSource": "<source-account-instance-id>", "restoreTimestampInUtc": "<timestamp>", "restoreWithTtlDisabled": "true" }, "createMode": "Restore" } }
- Impostare
Per ripristinare un contenitore sql, aggiornare il modello seguente nel modo seguente:
- Impostare resources.name su
<accountname>/databasename>/<containername>
- Impostare resources.properties.resource.createMode da ripristinare.
- Impostare resources.properties.resource.restoreParameters.id nome del contenitore.
- Impostare resources.properties.resource.restoreParameters.restoreTimestampInUtc su un timestamp UTC.
- Impostare resources.properties.resource.restoreParameters.restoreSource sull'identificatore dell'istanza dell'account che rappresenta l'origine dell'operazione di ripristino.
{
"$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"
}
}
}
]
}
Per ripristinare un database SQL, aggiornare il modello seguente nel modo seguente:
- Impostare resources.name su
<accountname>/databasename>
- Impostare resources.properties.resource.createMode da ripristinare.
- Impostare resources.properties.resource.restoreParameters.id nome del database.
- Impostare resources.properties.resource.restoreParameters.restoreTimestampInUtc su un timestamp UTC.
- Impostare resources.properties.resource.restoreParameters.restoreSource sull'identificatore dell'istanza dell'account che rappresenta l'origine dell'operazione di ripristino.
{
"$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"
}
}
Per ripristinare una raccolta mongo, aggiornare il modello seguente nel modo seguente:
- Impostare resources.name su
<accountname>/databasename>/<collectionname>
- Impostare resources.properties.resource.createMode da ripristinare.
- Impostare resources.properties.resource.restoreParameters.id nome della raccolta.
- Impostare resources.properties.resource.restoreParameters.restoreTimestampInUtc su un timestamp UTC.
- Impostare resources.properties.resource.restoreParameters.restoreSource sull'identificatore dell'istanza dell'account che rappresenta l'origine dell'operazione di ripristino.
{
"$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"
}
}
}
]
}
Per ripristinare un database mongo, aggiornare il modello seguente nel modo seguente:
- Impostare resources.name su
<accountname>/databasename>
- Impostare resources.properties.resource.createMode da ripristinare.
- Impostare resources.properties.resource.restoreParameters.id nome del database.
- Impostare resources.properties.resource.restoreParameters.restoreTimestampInUtc su un timestamp UTC.
- Impostare resources.properties.resource.restoreParameters.restoreSource sull'identificatore dell'istanza dell'account che rappresenta l'origine dell'operazione di ripristino.
{
"$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"
}
}
Per ripristinare un grafo gremlin, aggiornare il modello seguente nel modo seguente:
- Impostare resources.name su
<accountname>/databasename>/<graphname>
- Impostare resources.properties.resource.createMode da ripristinare.
- Impostare resources.properties.resource.restoreParameters.id nome del grafo.
- Impostare resources.properties.resource.restoreParameters.restoreTimestampInUtc su un timestamp UTC.
- Impostare resources.properties.resource.restoreParameters.restoreSource sull'identificatore dell'istanza dell'account che rappresenta l'origine dell'operazione di ripristino.
{
"$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"
}
}
}
]
}
Per ripristinare un database gremlin, aggiornare il modello seguente come segue:
- Impostare resources.name su
<accountname>/databasename>
- Impostare resources.properties.resource.createMode da ripristinare.
- Impostare resources.properties.resource.restoreParameters.id nome del database.
- Impostare resources.properties.resource.restoreParameters.restoreTimestampInUtc su un timestamp UTC.
- Impostare resources.properties.resource.restoreParameters.restoreSource sull'identificatore dell'istanza dell'account che rappresenta l'origine dell'operazione di ripristino.
{
"$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"
}
}
Per ripristinare una tabella, aggiornare il modello seguente nel modo seguente:
- Impostare resources.name su
<accountname>/tablename>
- Impostare resources.properties.resource.createMode da ripristinare.
- Impostare resources.properties.resource.restoreParameters.id nome della tabella.
- Impostare resources.properties.resource.restoreParameters.restoreTimestampInUtc su un timestamp UTC.
- Impostare resources.properties.resource.restoreParameters.restoreSource sull'identificatore dell'istanza dell'account che rappresenta l'origine dell'operazione di ripristino.
{
"$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
Usare az cosmosdb restorable-database-account list per recuperare un elenco di identificatori di istanza per tutti gli account di database ripristinabili live ed eliminati.
Distribuire il modello usando az deployment group create:
az deployment group create \ --resource-group <resource-group-name> \ --template-file <template-filename>
Tenere traccia dello stato dell'operazione di ripristino
Quando viene avviato un ripristino temporizzato per un contenitore o un database eliminato, l'operazione viene identificata come operazione di ripristino all’interno dell’account nella risorsa.
- Azure portal
- Interfaccia della riga di comando di Azure
- Azure PowerShell
- Modello di Azure Resource Manager
Per ottenere un elenco di operazioni di ripristino per una risorsa specifica, filtrare il log attività dell'account usando il filtro di ricerca Ripristino eliminati nell’account e un filtro temporale. L'elenco restituito include il campo UserPrincipalName, che identifica l'utente che ha avviato l'operazione di ripristino. Per altre informazioni su come accedere ai log attività, vedere Controllare le azioni di ripristino temporizzato.
Attualmente, per ottenere il log attività dell'account, è necessario usare il portale di Azure. Usare il filtro di ricerca Ripristino eliminati nell’account e un filtro temporale.
Attualmente, per ottenere il log attività dell'account, è necessario usare il portale di Azure. Usare il filtro di ricerca Ripristino eliminati nell’account e un filtro temporale.
Attualmente, per ottenere il log attività dell'account, è necessario usare il portale di Azure. Usare il filtro di ricerca Ripristino eliminati nell’account e un filtro temporale.
Passaggi successivi
- Abilitare il backup continuo usando il portale di Azure, Azure PowerShell, l'interfaccia della riga di comando di Azure o Azure Resource Manager.
- Informazioni su come eseguire la migrazione di un account dal backup periodico al backup continuo.
- Analizza il modello di risorsa in modalità backup continuo.
- Gestire le autorizzazioni necessarie per ripristinare i dati usando la modalità di backup continuo.
Commenti e suggerimenti
Questa pagina è stata utile?