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
como restore
.
- 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"
}
}
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"
}
}
}
]
}
Implante o modelo usando az deployment group create
:
az deployment group create \
--resource-group <resource-group-name> \
--template-file <template-filename>