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á obnovit z náhodné změny v rámci kontejneru, obnovit odstraněný účet, databázi nebo kontejner nebo obnovit 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 živý nebo odstraněný účet služby Azure Cosmos DB. Ukazuje, jak obnovit účet pomocí webu Azure Portal, PowerShellu, rozhraní příkazového řádku nebo šablony Azure Resource Manageru.

Obnovení účtu pomocí webu Azure Portal

Obnovení živého účtu z náhodné změny

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

  1. Přihlaste se k portálu Azure.

  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í na webu 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 o oprávněních zálohování a obnovení.

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

    • Bod obnovení (UTC) – časové razítko za posledních 30 dnů. Účet by měl existovat v daném časovém razítku. Bod obnovení můžete zadat v UTC. Pokud ho chcete obnovit, může být blízko druhé. Kliknutím sem získáte nápovědu k identifikaci bodu obnovení.

    • Umístění – cílová oblast, do 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 lze obnovit pouze do oblastí, ve kterých existoval zdrojový účet.

    • Obnovit prostředek – Můžete zvolit buď celý účet , nebo vybranou databázi nebo kontejner , který chcete obnovit. 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 naplní prostředky obnovení, 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í dodržovat stejné pokyny jako při vytváření nového účtu. Tento účet se vytvoří procesem obnovení ve stejné oblasti, ve které existuje váš zdrojový účet.

    Obnovení živého účtu z náhodné změny webu Azure Portal

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

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

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

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

Identifikace času obnovení pomocí kanálu událostí

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

Pokud například chcete obnovit bod před odstraněním nebo aktualizací určitého kontejneru, zkontrolujte tento informační kanál událostí. Události se zobrazují chronologicky sestupně v čase, kdy došlo k jejich výskytu, s nedávnými událostmi v horní části. Výsledky můžete procházet a vybrat čas před událostí nebo po této události a zúžit tak čas.

K identifikaci bodu obnovení použijte kanál událostí.

Poznámka:

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

Obnovení odstraněného účtu

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

  1. Přihlaste se k portálu Azure.

  2. Na globálním panelu hledání vyhledejte prostředky Azure Cosmos DB . Zobrazí seznam všech vašich stávají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 času odstranění.

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

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

    Poznámka:

    Okno obnovení na webu 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 o oprávněních 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í ve standardu UTC. Pokud ho chcete obnovit, může být blízko druhé.

    • Umístění – cílová oblast, do které je potřeba účet obnovit. Zdrojový účet by měl existovat v této oblasti 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í dodržovat stejné pokyny jako při vytváření nového účtu. Tento účet se vytvoří procesem obnovení ve stejné oblasti, ve které 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. Poskytuje odkaz zobrazující stav obnovovaného účtu. Během obnovení se stav účtu vytvoří, jakmile se operace obnovení dokončí, stav účtu se 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í možná budete chtít znát podrobnosti o zdrojovém účtu, ze kterého jste obnovili, nebo čas obnovení.

Pomocí následujících kroků získejte podrobnosti o obnovení z webu Azure Portal:

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

  2. Přejděte do podokna Exportovat šablonu . Otevře šablonu JSON odpovídající obnoveným účtům.

Obnovení účtu pomocí Azure PowerShellu

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

  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 API pro NoSQL

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


Restore-AzCosmosDBAccount `
  -TargetResourceGroupName "MyRG" `
  -TargetDatabaseAccountName "RestoredAccountName" `
  -SourceDatabaseAccountName "SourceDatabaseAccountName" `
  -RestoreTimestampInUtc "UTCTime" `
  -Location "AzureRegionName" ` 
  -PublicNetworkAccess Disabled `
  -DisableTtl $true

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" `
  -PublicNetworkAccess Disabled
  -DisableTtl $false


Pokud PublicNetworkAccess není nastavený, obnovený účet je přístupný z veřejné sítě, nezapomeňte předat DisabledPublicNetworkAccess možnost zakázat přístup k veřejné síti pro obnovený účet. Nastavení DisableTtl na $true zajišťuje, že hodnota TTL je u obnoveného účtu zakázaná, a pokud byla nastavena dříve, neposkytuje parametr obnovení účtu s povoleným TTL.

Poznámka:

Pro obnovení s zakázaným přístupem k veřejné síti je minimální stabilní verze Az.CosmosDB 1.12.0.

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 v 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 1, graf2 z MyDB1 a celou databázi MyDB2, která zahrnuje všechny kontejnery v ní.

$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í tabulku tabulek1, tabulka1 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, který je nakonfigurovaný se spravovanou identitou pomocí rozhraní příkazového řádku

Pokud chcete obnovit průběžný účet klíče spravovaného zákazníkem (CMK), projděte si postup uvedený tady.

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

Importujte Az.CosmosDB modul verze 1.12.0 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 

Vytvoření výčtu obnovitelných prostředků pro rozhraní API pro NoSQL

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

Výpis 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ěď zahrnuje všechny databázové účty (živé i odstraněné), které je možné obnovit, a oblasti, ze kterých se dají 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 CreationTimeDeletionTime účtu nebo pro tento účet existuje CreationTime také oblast nebo DeletionTime oblast. 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 účtu živé databáze

Výpis všech verzí databází umožňuje zvolit správnou databázi ve scénáři, ve kterém 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 parametry Location jsou získány z name vlastností location v odpovědi rutiny Get-AzCosmosDBRestorableDatabaseAccount . Atribut DatabaseAccountInstanceId odkazuje na instanceId vlastnost obnoveného zdrojového databázového účtu:


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

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

Pomocí následujícího příkazu zobrazíte seznam všech verzí kontejnerů SQL. Tento příkaz funguje jenom s živými účty. Parametr DatabaseRId je ResourceId databáze, kterou chcete obnovit. Je to hodnota atributu ownerResourceid nalezená v odpovědi rutiny Get-AzCosmosdbSqlRestorableDatabase . Odpověď obsahuje také seznam operací prováděných se všemi kontejnery 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"

Vytvoření výčtu 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ítkech. Kromě toho poskytují také kanál klíčových událostí v obnovovatelném účtu, databázi a prostředcích kontejneru. Tyto příkazy fungují jenom pro živé účty a jsou podobné příkazům API for NoSQL, ale v MongoDB názvu příkazu místo sql.

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


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

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


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é jsou k dispozici k obnovení 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"

Vytvoření výčtu obnovitelných prostředků pro rozhraní API pro Gremlin

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

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, ve kterém 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 parametry Location jsou získány z name vlastností location v odpovědi rutiny Get-AzCosmosDBRestorableDatabaseAccount . Atribut DatabaseAccountInstanceId odkazuje na instanceId vlastnost obnoveného zdrojového databázového účtu:

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

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

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. Je to hodnota atributu ownerResourceid nalezená 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" 

Vyhledejte databáze nebo grafy, 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" 

Vytvoření výčtu obnovitelných prostředků pro rozhraní API pro tabulku

Rutiny výčtu pomáhají zjistit prostředky, které jsou k dispozici pro obnovení v různých časových razítkech. Kromě toho poskytují také informační kanál klíčových událostí na obnovovatelných účtech a prostředcích tabulek.

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

Pomocí následujícího příkazu zobrazíte 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é lze 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 novější než 2.52.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 pouze s rozhraním příkazového řádku vyšší než 2.52.0. 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.
    • Vyberte požadované předplatné pomocí az account set -s <subscriptionguid> příkazu.

Aktivace operace obnovení pomocí Azure CLI

Nejjednodušší způsob, jak aktivovat obnovení, je vydáním příkazu pro obnovení s názvem cílového účtu, zdrojového účtu, umístění, skupiny prostředků, časového razítka (v UTC) a volitelně názvy databází a kontejnerů. Tady je několik příkladů, jak aktivovat operaci 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" \
 --public-network-access Disabled \
 --disable-ttl True 

Pokud --public-network-access není nastavený, obnovený účet je přístupný z veřejné sítě. Nezapomeňte předat Disabled--public-network-access možnost zabránit přístupu k veřejné síti pro obnovený účet. Nastavením hodnoty disable-ttl na $true zajistíte, že hodnota TTL je u obnoveného účtu zakázaná, a pokud byl nastavený dříve, nezadá tento parametr, obnoví účet s povoleným TTL.

Poznámka:

Pro obnovení s zakázaným přístupem k veřejné síti je minimální stabilní verze azure-cli 2.52.0.

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 účet Gremlin obnovením pouze vybraných databází a grafů z existujícího rozhraní API pro účet 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 účtu 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 zobrazuje hodnotu createMode vlastnosti. Pokud je hodnota nastavená na Obnovit, znamená to, že se účet obnovil z jiného účtu. Vlastnost restoreParameters obsahuje další podrobnosti, například restoreSource, která má ID zdrojového účtu. Posledním identifikátorem instanceId GUID v parametru restoreSource je zdrojový účet. restoreTimestamp A bude pod objektemrestoreParameters:

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

Vytvoření výčtu obnovitelných prostředků pro rozhraní API pro 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ítkech. Kromě toho poskytují také kanál klíčových událostí v obnovovatelném účtu, databázi a prostředcích kontejneru.

Výpis 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ěď zahrnuje 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 CreationTimeDeletionTime účtu nebo pro tento účet existuje CreationTime také oblast nebo DeletionTime oblast. 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 účtu živé databáze

Výpis všech verzí databází umožňuje zvolit správnou databázi ve scénáři, ve kterém 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 a parametry instance-idlocation jsou získány z name vlastností location v odpovědi az cosmosdb restorable-database-account list příkazu. Atribut instanceId je také vlastností zdrojového databázového účtu, 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 vytvořena a odstraněna databáze.

[
  {
    "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 účtu živé databáze

Pomocí následujícího příkazu zobrazíte 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 nalezeného az cosmosdb sql restorable-database list v odpovědi příkazu.

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

Tento výstup příkazu ukazuje seznam operací prováděných se všemi kontejnery v této databázi:

[
  {
      "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"
  }
]

Vytvoření výčtu 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ítkech. Kromě toho poskytují také kanál klíčových událostí v obnovovatelném účtu, databázi a prostředcích kontejneru. Tyto příkazy fungují jenom pro živé účty.

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

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 účtu živé databáze

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é jsou k dispozici k obnovení 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 účtu živé databáze

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ítkech. Kromě toho poskytují také kanál klíčových událostí v obnovovatelném účtu, databázi a grafových prostředcích. 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 vytvořena a odstraněna databáze.

[ { 
    "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 účtu živé databáze

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

Tento výstup příkazu ukazuje seznam operací prováděných se všemi kontejnery v této databázi:

[ { 

    "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" 
  } 
] 

Vyhledejte databáze nebo grafy, 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" 

Tento výstup příkazu ukazuje grafy, které je možné obnovit:

[
 { 
"databaseName": "db1", 
"graphNames": [ "graph1",   "graph3",   "graph2"  ] 
  } 
] 

Vytvoření výčtu obnovitelných prostředků pro rozhraní API pro účet Table

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ítkech. Kromě toho poskytují také 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 účtu živé databáze

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é jsou k dispozici k obnovení 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" 

Následuje výsledek příkazu.

{   
  "tableNames": [ 
"table1", 
"table3", 
"table2" 

  ] 
} 

Obnovení pomocí šablony Azure Resource Manageru

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

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

  1. createMode Nastavte parametr na Restore.
  2. restoreParametersDefinujte , všimněte si, že restoreSource hodnota se extrahuje z výstupu az cosmosdb restorable-database-account list příkazu pro váš zdrojový účet. Atribut ID instance pro název vašeho účtu slouží k obnovení.
  3. restoreMode Nastavte 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ší příklady pro jiná rozhraní API jsou k dispozici.

{
  "$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": "2023-04-15",
      "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",
            "restoreWithTtlDisabled": "true"
        }
      }
    }
  ]
}

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": "2023-04-15",
      "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": "2023-04-15",
      "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" 
            ] 
        }
      }
    }
  ]
}

Pak šablonu nasadíte pomocí Azure PowerShellu 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