Obnovení účtu služby Azure Cosmos DB, který používá režim průběžného zálohování

PLATÍ PRO: NoSQL MongoDB Gremlin Tabulka

Funkce obnovení k určitému bodu v čase ve službě Azure Cosmos DB pomáhá provést zotavení po náhodné změně v kontejneru, obnovit odstraněný účet, databázi nebo kontejner nebo provést obnovení do libovolné oblasti (kde existovaly zálohy). V režimu průběžného zálohování můžete provést obnovení k určitému bodu v čase během posledních 30 dnů.

Tento článek popisuje, jak identifikovat čas obnovení a obnovit aktivní nebo odstraněný účet služby Azure Cosmos DB. Ukazuje obnovení účtu pomocí Azure Portal, PowerShellu, rozhraní příkazového řádku nebo šablony Azure Resource Manager.

Poznámka

V současné době je akce obnovení pro rozhraní API pro table a Gremlin ve verzi Preview podporovaná prostřednictvím PowerShellu a Azure CLI.

Obnovení účtu pomocí Azure Portal

Obnovení živého účtu z náhodné úpravy

Azure Portal můžete použít k obnovení celého aktivního účtu nebo vybraných databází a kontejnerů pod ním. K obnovení dat použijte následující postup:

  1. Přihlaste se k Azure Portal.

  2. Přejděte do svého účtu služby Azure Cosmos DB a otevřete okno Obnovení k určitému bodu v čase .

    Poznámka

    Okno obnovení v Azure Portal se vyplní jenom v případě, že máte Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read oprávnění. Další informace o nastavení tohoto oprávnění najdete v článku Oprávnění k zálohování a obnovení .

  3. Pokud chcete obnovení provést, vyplňte následující podrobnosti:

    • Bod obnovení (UTC) – časové razítko za posledních 30 dnů. Účet by měl existovat v tomto časovém razítku. Bod obnovení můžete zadat v UTC. Pokud ho chcete obnovit, může se to blížit sekundě. Výběrem odkazu Klikněte sem získáte nápovědu k identifikaci bodu obnovení.

    • Umístění – cílová oblast, ve které se účet obnoví. Účet by měl existovat v této oblasti v daném časovém razítku (například USA – západ nebo USA – východ). Účet je možné obnovit pouze do oblastí, ve kterých zdrojový účet existoval.

    • Obnovit prostředek – K obnovení můžete zvolit celý účet nebo vybranou databázi nebo kontejner . Databáze a kontejnery by měly existovat v daném časovém razítku. Na základě vybraného bodu obnovení a umístění se prostředky obnovení naplní, což uživateli umožňuje vybrat konkrétní databáze nebo kontejnery, které je potřeba obnovit.

    • Skupina prostředků – skupina prostředků, ve které se vytvoří a obnoví cílový účet. Skupina prostředků už musí existovat.

    • Obnovit cílový účet – název cílového účtu. Název cílového účtu musí odpovídat stejným pokynům jako při vytváření nového účtu. Tento účet se vytvoří procesem obnovení ve stejné oblasti, kde existuje váš zdrojový účet.

    Obnovení živého účtu v důsledku náhodné úpravy Azure Portal.

  4. Po výběru výše uvedených parametrů vyberte tlačítko Odeslat a spusťte obnovení. Náklady na obnovení se účtují jednorázově, což vychází z velikosti dat a nákladů na úložiště zálohování ve vybrané oblasti. Další informace najdete v části Ceny .

Odstranění zdrojového účtu v době, kdy probíhá obnovení, může způsobit selhání obnovení.

Obnovitelné časové razítko pro živé účty

Pokud chcete obnovit živé účty Azure Cosmos DB, které se neodstraní, je osvědčeným postupem vždy identifikovat nejnovější obnovitelné časové razítko kontejneru. Toto časové razítko pak můžete použít k obnovení účtu na nejnovější verzi.

Použití informačního kanálu událostí k identifikaci času obnovení

Pokud při vyplňování bodu obnovení v Azure Portal potřebujete pomoc s identifikací bodu obnovení, vyberte odkaz Klikněte sem a přejdete do okna Informační kanál událostí. Informační kanál událostí poskytuje úplný seznam událostí vytváření, nahrazování a odstraňování v databázích a kontejnerech zdrojového účtu.

Pokud například chcete provést obnovení do bodu před odstraněním nebo aktualizací určitého kontejneru, zkontrolujte tento informační kanál událostí. Události se zobrazují v chronologicky sestupném pořadí podle času, kdy k nim došlo, s nedávnými událostmi nahoře. Můžete procházet výsledky a vybrat čas před nebo po události, abyste svůj čas ještě zúžili.

Pomocí informačního kanálu událostí identifikujte čas bodu obnovení.

Poznámka

Informační kanál událostí nezobrazuje změny prostředků položek. Pro obnovení můžete vždy ručně zadat libovolné časové razítko za posledních 30 dnů (pokud účet v té době existuje).

Obnovení odstraněného účtu

Azure Portal můžete použít k úplnému obnovení odstraněného účtu do 30 dnů od odstranění. K obnovení odstraněného účtu použijte následující postup:

  1. Přihlaste se k Azure Portal.

  2. Na panelu globální vyhledávání vyhledejte prostředky Azure Cosmos DB. Obsahuje seznam všech vašich existujících účtů.

  3. Pak vyberte tlačítko Obnovit . V okně Obnovit se zobrazí seznam odstraněných účtů, které je možné obnovit během doby uchovávání, což je 30 dnů od odstranění.

  4. Zvolte účet, který chcete obnovit.

    Obnovení odstraněného účtu z Azure Portal

    Poznámka

    Okno obnovení v Azure Portal se vyplní jenom v případě, že máte Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read oprávnění. Další informace o nastavení tohoto oprávnění najdete v článku Oprávnění k zálohování a obnovení .

  5. Vyberte účet, který chcete obnovit, a zadejte následující podrobnosti pro obnovení odstraněného účtu:

    • Bod obnovení (UTC) – časové razítko za posledních 30 dnů. Účet by měl existovat v daném časovém razítku. Zadejte bod obnovení v UTC. Pokud ho chcete obnovit, může se to blížit sekundě.

    • Umístění – cílová oblast, ve které je potřeba účet obnovit. Zdrojový účet by měl v této oblasti existovat v daném časovém razítku. Příklad USA – západ nebo USA – východ.

    • Skupina prostředků – skupina prostředků, ve které se vytvoří a obnoví cílový účet. Skupina prostředků už musí existovat.

    • Obnovit cílový účet – název cílového účtu musí odpovídat stejným pokynům jako při vytváření nového účtu. Tento účet se vytvoří procesem obnovení ve stejné oblasti, kde existuje váš zdrojový účet.

Sledování stavu operace obnovení

Po zahájení operace obnovení vyberte ikonu zvonku oznámení v pravém horním rohu portálu. Zobrazí se odkaz zobrazující stav obnovovaného účtu. Zatímco probíhá obnovení, stav účtu bude Vytváření. Po dokončení operace obnovení se stav účtu změní na Online.

Po dokončení operace se stav obnoveného účtu změní z vytváření na online.

Získání podrobností o obnovení z obnoveného účtu

Po dokončení operace obnovení můžete chtít znát podrobnosti o zdrojovém účtu, ze kterého jste obnovení obnovili, nebo čas obnovení.

K získání podrobností o obnovení z Azure Portal použijte následující postup:

  1. Přihlaste se k Azure Portal a přejděte na obnovený účet.

  2. Přejděte do podokna Exportovat šablonu . Otevře se šablona JSON odpovídající obnoveného účtu.

Obnovení účtu pomocí Azure PowerShell

Před obnovením účtu nainstalujte nejnovější verzi Azure PowerShell nebo novější než 6.2.0. Dále se připojte ke svému účtu Azure a pomocí následujících příkazů vyberte požadované předplatné:

  1. Přihlaste se k Azure pomocí následujícího příkazu:

    Connect-AzAccount
    
  2. Pomocí následujícího příkazu vyberte konkrétní předplatné:

    Select-AzSubscription -Subscription <SubscriptionName>
    
    

Aktivace operace obnovení pro účet ROZHRANÍ API pro NoSQL

Následující rutina je příkladem aktivace operace obnovení pomocí příkazu obnovení pomocí cílového účtu, zdrojového účtu, umístění, skupiny prostředků a časového razítka:


Restore-AzCosmosDBAccount `
  -TargetResourceGroupName "MyRG" `
  -TargetDatabaseAccountName "RestoredAccountName" `
  -SourceDatabaseAccountName "SourceDatabaseAccountName" `
  -RestoreTimestampInUtc "UTCTime" `
  -Location "AzureRegionName"

Příklad 1: Obnovení celého účtu:


Restore-AzCosmosDBAccount `
  -TargetResourceGroupName "MyRG" `
  -TargetDatabaseAccountName "Pitracct" `
  -SourceDatabaseAccountName "source-sql" `
  -RestoreTimestampInUtc "2021-01-05T22:06:00" `
  -Location "West US"

Příklad 2: Obnovení konkrétních kolekcí a databází. Tento příklad obnoví kolekce MyCol1, MyCol2 z MyDB1 a celou databázi MyDB2, která zahrnuje všechny kontejnery pod ním.

$datatabaseToRestore1 = New-AzCosmosDBDatabaseToRestore -DatabaseName "MyDB1" -CollectionName "MyCol1", "MyCol2"
$datatabaseToRestore2 = New-AzCosmosDBDatabaseToRestore -DatabaseName "MyDB2"

Restore-AzCosmosDBAccount `
  -TargetResourceGroupName "MyRG" `
  -TargetDatabaseAccountName "Pitracct" `
  -SourceDatabaseAccountName "SourceSql" `
  -RestoreTimestampInUtc "2021-01-05T22:06:00" `
  -DatabasesToRestore $datatabaseToRestore1, $datatabaseToRestore2 `
  -Location "West US"

Příklad 3: Obnovení rozhraní API pro účet Gremlin Tento příklad obnoví grafy graphs graph1, graph2 z MyDB1 a celou databázi MyDB2, která obsahuje všechny kontejnery pod ním.

$datatabaseToRestore1 = New-AzCosmosDBGremlinDatabaseToRestore  -DatabaseName "MyDB1" -GraphName "graph1", "graph2"  
$datatabaseToRestore2 = New-AzCosmosDBGremlinDatabaseToRestore  -DatabaseName "MyDB2"

Restore-AzCosmosDBAccount `
  -TargetResourceGroupName "MyRG" `
  -TargetDatabaseAccountName "Pitracct" `
  -SourceDatabaseAccountName "SourceGremlin" `
  -RestoreTimestampInUtc "2022-04-05T22:06:00" `
  -DatabasesToRestore $datatabaseToRestore1, $datatabaseToRestore2 `
  -Location "West US"

Příklad 4: Obnovení rozhraní API pro účet tabulky Tento příklad obnoví tabulky table1 a table1 z MyDB1.

$tablesToRestore  = New-AzCosmosDBTableToRestore -TableName "table1", "table2"  

Restore-AzCosmosDBAccount `
  -TargetResourceGroupName "MyRG" `
  -TargetDatabaseAccountName "Pitracct" `
  -SourceDatabaseAccountName "SourceTable" `
  -RestoreTimestampInUtc "2022-04-06T22:06:00" `
  -TablesToRestore $tablesToRestore
  -Location "West US"

Obnovení průběžného účtu s nakonfigurovanou spravovanou identitou pomocí rozhraní příkazového řádku

Pokud chcete obnovit nepřetržitý účet klíče spravovaného zákazníkem (CMK), projděte si tady uvedené kroky.

Získání podrobností o obnovení z obnoveného účtu

Importujte Az.CosmosDB modul a spuštěním následujícího příkazu získejte podrobnosti o obnovení. RestoreTimestamp bude pod objektem restoreParameters:

Get-AzCosmosDBAccount -ResourceGroupName MyResourceGroup -Name MyCosmosDBDatabaseAccount 

Výčet obnovitelných prostředků pro rozhraní API for NoSQL

Rutiny výčtu vám pomůžou zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítek. Kromě toho poskytují také informační kanál klíčových událostí pro obnovitelné prostředky účtu, databáze a kontejneru.

Seznam všech účtů, které je možné obnovit v aktuálním předplatném

Spuštěním příkazu PowerShellu Get-AzCosmosDBRestorableDatabaseAccount zobrazte seznam všech účtů, které je možné obnovit v aktuálním předplatném.

Odpověď obsahuje všechny databázové účty (živé i odstraněné), které je možné obnovit, a oblasti, ze kterých je možné obnovit.

{
    "accountName": "SampleAccount",
    "apiType": "Sql",
    "creationTime": "2020-08-08T01:04:52.070190+00:00",
    "deletionTime": null,
    "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/23e99a35-cd36-4df4-9614-f767a03b9995",
    "identity": null,
    "location": "West US",
    "name": "23e99a35-cd36-4df4-9614-f767a03b9995",
    "restorableLocations": [
      {
        "creationTime": "2020-08-08T01:04:52.945185+00:00",
        "deletionTime": null,
        "location": "West US",
        "regionalDatabaseAccountInstanceId": "30701557-ecf8-43ce-8810-2c8be01dccf9"
      },
      {
        "creationTime": "2020-08-08T01:15:43.507795+00:00",
        "deletionTime": null,
        "location": "East US",
        "regionalDatabaseAccountInstanceId": "8283b088-b67d-4975-bfbe-0705e3e7a599"
      }
    ],
    "tags": null,
    "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts"
  }

Stejně jako u CreationTime účtu nebo DeletionTime existuje i pro CreationTime oblast nebo DeletionTime . Tyto časy umožňují zvolit správnou oblast a platný časový rozsah pro obnovení do této oblasti.

Výpis všech verzí databází SQL v živém databázovém účtu

Výpis všech verzí databází umožňuje zvolit správnou databázi ve scénáři, kdy je skutečná doba existence databáze neznámá.

Spuštěním následujícího příkazu PowerShellu zobrazte seznam všech verzí databází. Tento příkaz funguje jenom s živými účty. Parametry DatabaseAccountInstanceId a Location jsou získány z name vlastností a location v odpovědi rutiny Get-AzCosmosDBRestorableDatabaseAccount . Atribut DatabaseAccountInstanceId odkazuje na instanceId vlastnost obnovovaného účtu zdrojové databáze:


Get-AzCosmosdbSqlRestorableDatabase `
  -Location "East US" `
  -DatabaseAccountInstanceId <DatabaseAccountInstanceId>

Výpis všech verzí kontejnerů SQL databáze v živém databázovém účtu

Pomocí následujícího příkazu zobrazte seznam všech verzí kontejnerů SQL. Tento příkaz funguje jenom s živými účty. Parametr DatabaseRId je ResourceId databáze, kterou chcete obnovit. Jedná se o hodnotu atributu ownerResourceid nalezeného v odpovědi rutiny Get-AzCosmosdbSqlRestorableDatabase . Odpověď obsahuje také seznam operací provedených ve všech kontejnerech uvnitř této databáze.


Get-AzCosmosdbSqlRestorableContainer `
  -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
  -DatabaseRId "AoQ13r==" `
  -Location "West US"

Vyhledání databází nebo kontejnerů, které je možné obnovit v libovolném časovém razítku

Pomocí následujícího příkazu získáte seznam databází nebo kontejnerů, které je možné obnovit v libovolném časovém razítku. Tento příkaz funguje jenom s živými účty.


Get-AzCosmosdbSqlRestorableResource `
  -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
  -Location "West US" `
  -RestoreLocation "East US" `
  -RestoreTimestamp "2020-07-20T16:09:53+0000"

Výčet obnovitelných prostředků v rozhraní API pro MongoDB

Příkazy výčtu popsané níže vám pomůžou zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítek. Kromě toho poskytují také informační kanál klíčových událostí pro obnovitelné prostředky účtu, databáze a kontejneru. Tyto příkazy fungují jenom pro živé účty a jsou podobné příkazům rozhraní API pro NoSQL, ale mají MongoDB v názvu příkazu místo sql.

Výpis všech verzí databází MongoDB v živém databázovém účtu


Get-AzCosmosdbMongoDBRestorableDatabase `
  -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
  -Location "West US"

Výpis všech verzí kolekcí MongoDB databáze v živém databázovém účtu


Get-AzCosmosdbMongoDBRestorableCollection `
  -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
  -DatabaseRId "AoQ13r==" `
  -Location "West US"

Výpis všech prostředků databázového účtu MongoDB, které je možné obnovit v daném časovém razítku a oblasti


Get-AzCosmosdbMongoDBRestorableResource `
  -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
  -Location "West US" `
  -RestoreLocation "West US" `
  -RestoreTimestamp "2020-07-20T16:09:53+0000"

Výčet obnovitelných prostředků pro rozhraní API pro Gremlin

Rutiny výčtu vám pomůžou zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítek. Kromě toho poskytují také informační kanál klíčových událostí v obnovitelném účtu, databázi a prostředcích grafu.

Výpis všech verzí databází Gremlin v účtu živé databáze

Výpis všech verzí databází umožňuje zvolit správnou databázi ve scénáři, kdy je skutečná doba existence databáze neznámá. Spuštěním následujícího příkazu PowerShellu zobrazte seznam všech verzí databází. Tento příkaz funguje jenom s živými účty. Parametry DatabaseAccountInstanceId a Location jsou získány z name vlastností a location v odpovědi rutiny Get-AzCosmosDBRestorableDatabaseAccount . Atribut DatabaseAccountInstanceId odkazuje na instanceId vlastnost obnovovaného účtu zdrojové databáze:

Get-AzCosmosdbGremlinRestorableDatabase ` 
   -Location "East US" ` 
   -DatabaseAccountInstanceId <DatabaseAccountInstanceId> 

Výpis všech verzí grafů Gremlin databáze v živém databázovém účtu

Pomocí následujícího příkazu zobrazte seznam všech verzí rozhraní API pro grafy Gremlin. Tento příkaz funguje jenom s živými účty. Parametr DatabaseRId je ResourceId databáze, kterou chcete obnovit. Jedná se o hodnotu atributu ownerResourceid nalezeného v odpovědi rutiny Get-AzCosmosdbGremlinRestorableDatabase . Odpověď obsahuje také seznam operací provedených ve všech grafech v této databázi.

Get-AzCosmosdbGremlinRestorableGraph ` 
   -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" ` 
   -DatabaseRId "AoQ13r==" ` 
   -Location "West US" 

Vyhledání databází nebo grafů, které je možné obnovit v libovolném časovém razítku

Pomocí následujícího příkazu získáte seznam databází nebo grafů, které je možné obnovit v libovolném časovém razítku. Tento příkaz funguje jenom s živými účty.

Get-AzCosmosdbGremlinRestorableResource ` 
   -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" ` 
   -Location "West US" ` 
   -RestoreLocation "East US" ` 
   -RestoreTimestamp "2020-07-20T16:09:53+0000" 

Výčet obnovitelných prostředků pro rozhraní API pro Table

Rutiny výčtu vám pomůžou zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítek. Kromě toho poskytují také informační kanál klíčových událostí pro obnovitelný účet a prostředky tabulky.

Výpis všech verzí tabulek databáze v živém databázovém účtu

Pomocí následujícího příkazu zobrazte seznam všech verzí tabulek. Tento příkaz funguje jenom s živými účty.

Get-AzCosmosdbTableRestorableTable ` 
   -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68"   
   ` -Location "West US" 

Vyhledání tabulek, které je možné obnovit v libovolném časovém razítku

Pomocí následujícího příkazu získáte seznam tabulek, které je možné obnovit v libovolném časovém razítku. Tento příkaz funguje jenom s živými účty.

Get-AzCosmosdbTableRestorableResource ` 
   -DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" ` 
   -Location "West US" ` 
   -RestoreLocation "East US" ` 
   -RestoreTimestamp "2020-07-20T16:09:53+0000" 

Obnovení účtu pomocí Azure CLI

Před obnovením účtu nainstalujte Azure CLI pomocí následujících kroků:

  1. Instalace nejnovější verze Azure CLI

    • Nainstalujte nejnovější verzi Azure CLI nebo vyšší než 2.26.0.
    • Pokud jste už rozhraní příkazového řádku nainstalovali, spusťte az upgrade příkaz pro aktualizaci na nejnovější verzi. Tento příkaz bude fungovat jenom s verzí rozhraní příkazového řádku vyšší než 2.11. Pokud máte starší verzi, nainstalujte nejnovější verzi pomocí výše uvedeného odkazu.
  2. Přihlaste se a vyberte své předplatné.

    • Přihlaste se ke svému účtu Azure pomocí az login příkazu .
    • Pomocí příkazu vyberte požadované předplatné az account set -s <subscriptionguid> .

Aktivace operace obnovení pomocí Azure CLI

Nejjednodušší způsob, jak aktivovat obnovení, je vydat příkaz pro obnovení s názvem cílového účtu, zdrojového účtu, umístěním, skupinou prostředků, časovým razítkem (v UTC) a volitelně i názvy databází a kontejnerů. Následuje několik příkladů aktivace operace obnovení:

Vytvoření nového účtu služby Azure Cosmos DB obnovením z existujícího účtu


az cosmosdb restore \
 --target-database-account-name MyRestoredCosmosDBDatabaseAccount \
 --account-name MySourceAccount \
 --restore-timestamp 2020-07-13T16:03:41+0000 \
 --resource-group MyResourceGroup \
 --location "West US"

Vytvoření nového účtu služby Azure Cosmos DB obnovením pouze vybraných databází a kontejnerů z existujícího databázového účtu


az cosmosdb restore \
 --resource-group MyResourceGroup \
 --target-database-account-name MyRestoredCosmosDBDatabaseAccount \
 --account-name MySourceAccount \
 --restore-timestamp 2020-07-13T16:03:41+0000 \
 --location "West US" \
 --databases-to-restore name=MyDB1 collections=Collection1 Collection2 \
 --databases-to-restore name=MyDB2 collections=Collection3 Collection4

Vytvoření nového účtu rozhraní API služby Azure Cosmos DB pro Gremlin obnovením pouze vybraných databází a grafů z existujícího účtu rozhraní API pro Gremlin


az cosmosdb restore \
 --resource-group MyResourceGroup \
 --target-database-account-name MyRestoredCosmosDBDatabaseAccount \
 --account-name MySourceAccount \
 --restore-timestamp 2022-04-13T16:03:41+0000 \
 --location "West US" \
 --gremlin-databases-to-restore name=MyDB1 graphs=graph1 graph2 \
 --gremlin-databases-to-restore name=MyDB2 graphs =graph3 graph4 

Vytvoření nového rozhraní API služby Azure Cosmos DB pro účet tabulky obnovením pouze vybraných tabulek z existujícího rozhraní API pro účet tabulky


az cosmosdb restore \
 --resource-group MyResourceGroup \
 --target-database-account-name MyRestoredCosmosDBDatabaseAccount \
 --account-name MySourceAccount \
 --restore-timestamp 2022-04-14T06:03:41+0000 \
 --location "West US" \
 --tables-to-restore table1 table2 

Získání podrobností o obnovení z obnoveného účtu

Spuštěním následujícího příkazu získejte podrobnosti o obnovení. Výstup az cosmosdb show příkazu zobrazí hodnotu createMode vlastnosti. Pokud je hodnota nastavená na Obnovit, znamená to, že účet byl obnoven z jiného účtu. Vlastnost restoreParameters obsahuje další podrobnosti, například restoreSource, která má ID zdrojového účtu. Poslední identifikátor GUID v parametru restoreSourceinstanceId je identifikátor zdrojového účtu. A bude restoreTimestamp pod objektem restoreParameters :

az cosmosdb show --name MyCosmosDBDatabaseAccount --resource-group MyResourceGroup

Výčet obnovitelných prostředků pro rozhraní API for NoSQL

Příkazy výčtu popsané níže vám pomůžou zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítek. Kromě toho poskytují také informační kanál klíčových událostí pro obnovitelné prostředky účtu, databáze a kontejneru.

Seznam všech účtů, které je možné obnovit v aktuálním předplatném

Spuštěním následujícího příkazu Azure CLI zobrazte seznam všech účtů, které je možné obnovit v aktuálním předplatném.

az cosmosdb restorable-database-account list --account-name "Pitracct"

Odpověď obsahuje všechny databázové účty (živé i odstraněné), které je možné obnovit, a oblasti, ze kterých se dají obnovit:

{
    "accountName": "Pitracct",
    "apiType": "Sql",
    "creationTime": "2021-01-08T23:34:11.095870+00:00",
    "deletionTime": null,
    "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234",
    "identity": null,
    "location": "West US",
    "name": "abcd1234-d1c0-4645-a699-abcd1234",
    "restorableLocations": [
      {
        "creationTime": "2021-01-08T23:34:11.095870+00:00",
        "deletionTime": null,
        "locationName": "West US",
        "regionalDatabaseAccountInstanceId": "f02df26b-c0ec-4829-8bef-3482d36e6230"
      }
    ],
    "tags": null,
    "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts"
  }

Stejně jako u CreationTime účtu nebo DeletionTime existuje i pro CreationTime oblast nebo DeletionTime . Tyto časy umožňují zvolit správnou oblast a platný časový rozsah pro obnovení do této oblasti.

Výpis všech verzí databází v živém databázovém účtu

Výpis všech verzí databází umožňuje zvolit správnou databázi ve scénáři, kdy je skutečná doba existence databáze neznámá.

Spuštěním následujícího příkazu Azure CLI zobrazte seznam všech verzí databází. Tento příkaz funguje jenom s živými účty. Parametry instance-id a location jsou získány z name vlastností a location v odpovědi az cosmosdb restorable-database-account list příkazu. Atribut instanceId je také vlastností účtu zdrojové databáze, který se obnovuje:

az cosmosdb sql restorable-database list \
  --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
  --location "West US"

Tento výstup příkazu teď ukazuje, kdy byla databáze vytvořena a odstraněna.

[
  {
    "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234/restorableSqlDatabases/40e93dbd-2abe-4356-a31a-35567b777220",
    ..
    "name": "40e93dbd-2abe-4356-a31a-35567b777220",
    "resource": {
      "database": {
        "id": "db1"
      },
      "eventTimestamp": "2021-01-08T23:27:25Z",
      "operationType": "Create",
      "ownerId": "db1",
      "ownerResourceId": "YuZAAA=="
    },
    ..
  },
  {
    "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234/restorableSqlDatabases/243c38cb-5c41-4931-8cfb-5948881a40ea",
    ..
    "name": "243c38cb-5c41-4931-8cfb-5948881a40ea",
    "resource": {
      "database": {
        "id": "spdb1"
      },
      "eventTimestamp": "2021-01-08T23:25:25Z",
      "operationType": "Create",
      "ownerId": "spdb1",
      "ownerResourceId": "OIQ1AA=="
    },
   ..
  }
]

Výpis všech verzí kontejnerů SQL databáze v živém databázovém účtu

Pomocí následujícího příkazu zobrazte seznam všech verzí kontejnerů SQL. Tento příkaz funguje jenom s živými účty. Parametr database-rid je ResourceId databáze, kterou chcete obnovit. Jedná se o hodnotu atributu ownerResourceid , který se nachází v odpovědi az cosmosdb sql restorable-database list příkazu.

az cosmosdb sql restorable-container list \
    --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
    --database-rid "OIQ1AA==" \
    --location "West US"

Výstup tohoto příkazu obsahuje seznam operací provedených ve všech kontejnerech uvnitř této databáze:

[
  {
    ...
    
      "eventTimestamp": "2021-01-08T23:25:29Z",
      "operationType": "Replace",
      "ownerId": "procol3",
      "ownerResourceId": "OIQ1APZ7U18="
...
  },
  {
    ...
      "eventTimestamp": "2021-01-08T23:25:26Z",
      "operationType": "Create",
      "ownerId": "procol3",
      "ownerResourceId": "OIQ1APZ7U18="
  },
]

Vyhledání databází nebo kontejnerů, které je možné obnovit v libovolném časovém razítku

Pomocí následujícího příkazu získáte seznam databází nebo kontejnerů, které je možné obnovit v libovolném časovém razítku. Tento příkaz funguje jenom s živými účty.


az cosmosdb sql restorable-resource list \
  --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
  --location "West US" \
  --restore-location "West US" \  
  --restore-timestamp "2021-01-10T01:00:00+0000"

[
  {
    "collectionNames": [
      "procol1",
      "procol2"
    ],
    "databaseName": "db1"
  },
  {
    "collectionNames": [
      "procol3",
       "spcol1"
    ],
    "databaseName": "spdb1"
  }
]

Výčet obnovitelných prostředků pro účet rozhraní API pro MongoDB

Příkazy výčtu popsané níže vám pomůžou zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítek. Kromě toho poskytují také informační kanál klíčových událostí pro obnovitelné prostředky účtu, databáze a kontejneru. Tyto příkazy fungují jenom pro živé účty.

Výpis všech verzí databází MongoDB v živém databázovém účtu

az cosmosdb mongodb restorable-database list \
    --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
    --location "West US"

Výpis všech verzí kolekcí MongoDB databáze v živém databázovém účtu

az cosmosdb mongodb restorable-collection list \
    --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
    --database-rid "AoQ13r==" \
    --location "West US"

Výpis všech prostředků databázového účtu mongodb, které je možné obnovit v daném časovém razítku a oblasti

az cosmosdb mongodb restorable-resource list \
    --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
    --location "West US" \
    --restore-location "West US" \
    --restore-timestamp "2020-07-20T16:09:53+0000"

Výpis všech verzí databází v živém databázovém účtu

Příkazy výčtu popsané níže vám pomůžou zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítek. Kromě toho poskytují také informační kanál klíčových událostí v obnovitelném účtu, databázi a prostředcích grafu. Tyto příkazy fungují jenom pro živé účty.

az cosmosdb gremlin restorable-database list \ 
   --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \ 
   --location "West US"

Tento výstup příkazu teď ukazuje, kdy byla databáze vytvořena a odstraněna.

[ { 
    "id": "/subscriptions/abcd1234-b6ac-4328-a753-abcd1234/providers/Microsoft.DocumentDB/locations/eastus2euap/restorableDatabaseAccounts/abcd1234-4316-483b-8308-abcd1234/restorableGremlinDatabases/abcd1234-0e32-4036-ac9d-abcd1234", 
    "name": "abcd1234-0e32-4036-ac9d-abcd1234", 
    "resource": { 
      "eventTimestamp": "2022-02-09T17:10:18Z", 
      "operationType": "Create", 
      "ownerId": "db1", 
      "ownerResourceId": "1XUdAA==", 
      "rid": "ymn7kwAAAA==" 
    }, 
    "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableGremlinDatabases" 
    
  } 
] 

Výpis všech verzí grafů Gremlin databáze v živém databázovém účtu

az cosmosdb gremlin restorable-graph list \ 
   --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \ 
   --database-rid "OIQ1AA==" \ 
   --location "West US" 

Výstup tohoto příkazu obsahuje seznam operací provedených ve všech kontejnerech uvnitř této databáze:

[ { 

    "id": "/subscriptions/23587e98-b6ac-4328-a753-03bcd3c8e744/providers/Microsoft.DocumentDB/locations/eastus2euap/restorableDatabaseAccounts/a00d591d-4316-483b-8308-44193c5f3073/restorableGraphs/1792cead-4307-4032-860d-3fc30bd46a20", 
    "name": "1792cead-4307-4032-860d-3fc30bd46a20", 
    "resource": { 
      "eventTimestamp": "2022-02-09T17:10:31Z", 
      "operationType": "Create", 
      "ownerId": "graph1", 
      "ownerResourceId": "1XUdAPv9duQ=", 
      "rid": "IcWqcQAAAA==" 
    }, 
    "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableGraphs" 
  } 
] 

Vyhledání databází nebo grafů, které je možné obnovit v libovolném časovém razítku

 
az cosmosdb gremlin restorable-resource list \ 
   --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \ 
   --location "West US" \ 
   --restore-location "West US" \ 
   --restore-timestamp "2021-01-10T01:00:00+0000" 
[   { 
    "databaseName": "db1", 
    "graphNames": [ 
      "graph1", 
      "graph3", 
      "graph2" 
    ] 
  } 
] 

Výčet obnovitelných prostředků pro rozhraní API pro účet Tabulky

Příkazy výčtu popsané níže vám pomůžou zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítek. Kromě toho poskytují také informační kanál klíčových událostí v obnovitelném účtu a rozhraní API pro prostředky Tabulky. Tyto příkazy fungují jenom pro živé účty.

Výpis všech verzí tabulek v živém databázovém účtu

az cosmosdb table restorable-table list \ 
   --instance-id "abcd1234-d1c0-4645-a699-abcd1234"  
   --location "West US" 
[   { 
    "id": "/subscriptions/23587e98-b6ac-4328-a753-03bcd3c8e744/providers/Microsoft.DocumentDB/locations/WestUS/restorableDatabaseAccounts/7e4d666a-c6ba-4e1f-a4b9-e92017c5e8df/restorableTables/59781d91-682b-4cc2-93a3-c25d03fab159", 
    "name": "59781d91-682b-4cc2-93a3-c25d03fab159", 
    "resource": { 
      "eventTimestamp": "2022-02-09T17:09:54Z", 
      "operationType": "Create", 
      "ownerId": "table1", 
      "ownerResourceId": "tOdDAKYiBhQ=", 
      "rid": "9pvDGwAAAA==" 
    }, 
    "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableTables" 
  }, 
    {"id": "/subscriptions/23587e98-b6ac-4328-a753-03bcd3c8e744/providers/Microsoft.DocumentDB/locations/eastus2euap/restorableDatabaseAccounts/7e4d666a-c6ba-4e1f-a4b9-e92017c5e8df/restorableTables/2c9f35eb-a14c-4ab5-a7e0-6326c4f6b785", 
    "name": "2c9f35eb-a14c-4ab5-a7e0-6326c4f6b785", 
    "resource": { 
      "eventTimestamp": "2022-02-09T20:47:53Z", 
      "operationType": "Create", 
      "ownerId": "table3", 
      "ownerResourceId": "tOdDALBwexw=", 
      "rid": "01DtkgAAAA==" 
    }, 
    "type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableTables" 
  }, 
] 

Výpis všech prostředků rozhraní API pro účet Tabulky, které je možné obnovit v daném časovém razítku a oblasti

az cosmosdb table restorable-resource list \ 
   --instance-id "abcd1234-d1c0-4645-a699-abcd1234" \ 
   --location "West US" \ 
   --restore-location "West US" \ 
   --restore-timestamp "2020-07-20T16:09:53+0000" 
{   
  "tableNames": [ 
    "table1", 
    "table3", 
    "table2" 
  ] 
} 

Obnovení pomocí šablony Azure Resource Manager

Účet můžete také obnovit pomocí šablony Azure Resource Manager (ARM). Při definování šablony zahrňte následující parametry:

Obnovení účtu rozhraní API pro NoSQL nebo MongoDB pomocí šablony ARM

  1. Nastavte createMode parametr na Obnovit.
  2. restoreParametersDefinujte hodnotu , všimněte si, že restoreSource se hodnota extrahuje z výstupu az cosmosdb restorable-database-account list příkazu pro váš zdrojový účet. K obnovení se používá atribut ID instance pro název vašeho účtu.
  3. Nastavte restoreMode parametr na PointInTime a nakonfigurujte restoreTimestampInUtc hodnotu.

Pomocí následující šablony ARM obnovte účet pro rozhraní API služby Azure Cosmos DB pro NoSQL nebo MongoDB. Další informace najdete v příkladu pro další rozhraní API.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "name": "vinhpitrarmrestore-kal3",
      "type": "Microsoft.DocumentDB/databaseAccounts",
      "apiVersion": "2016-03-31",
      "location": "West US",
      "properties": {
        "locations": [
          {
            "locationName": "West US"
          }
        ],
        "databaseAccountOfferType": "Standard",
        "createMode": "Restore",
        "restoreParameters": {
            "restoreSource": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/6a18ecb8-88c2-4005-8dce-07b44b9741df",
            "restoreMode": "PointInTime",
            "restoreTimestampInUtc": "6/24/2020 4:01:48 AM"
        }
      }
    }
  ]
}

Obnovení rozhraní API pro účet Gremlin pomocí šablony ARM

{
  "$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": "2016-03-31",
      "location": "West US",
      "properties": {
        "locations": [
          {
            "locationName": "West US"
          }
        ],
        "backupPolicy": { 
          "type": "Continuous" 
        }, 
        "databaseAccountOfferType": "Standard",
        "createMode": "Restore",
        "restoreParameters": {
            "restoreSource": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/5cb9d82e-ec71-430b-b977-cd6641db85bc",
            "restoreMode": "PointInTime",
            "restoreTimestampInUtc": "2021-10-27T23:20:46Z",
            "gremlinDatabasesToRestore": { 
                "databaseName": "db1", 
                "graphNames": [ 
                    "graph1", "graph2" 
                ] 
            }
        }
      }
    }
  ]
}

Obnovení rozhraní API pro účet Tabulky pomocí šablony ARM

{
  "$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": "2016-03-31",
      "location": "West US",
      "properties": {
        "locations": [
          {
            "locationName": "West US"
          }
        ],
        "backupPolicy": { 
          "type": "Continuous" 
        }, 
        "databaseAccountOfferType": "Standard",
        "createMode": "Restore",
        "restoreParameters": {
            "restoreSource": "/subscriptions/1296c352-5d33-40d9-bc05-4d56dc2a7521/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/4bcb9d82e-ec71-430b-b977-cd6641db85ad",
            "restoreMode": "PointInTime",
            "restoreTimestampInUtc": "2022-04-13T10:20:46Z",
             "tablesToRestore": [ 
                "table1", "table2" 
            ] 
        }
      }
    }
  ]
}

V dalším kroku nasaďte šablonu pomocí Azure PowerShell nebo Azure CLI. Následující příklad ukazuje, jak nasadit šablonu pomocí příkazu Azure CLI:

az deployment group create -g <ResourceGroup> --template-file <RestoreTemplateFilePath> 

Další kroky