Folyamatos biztonsági mentési módot használó Azure Cosmos DB-fiók visszaállítása

A KÖVETKEZŐKRE VONATKOZIK: Nosql MongoDB Gremlin Táblázat

Az Azure Cosmos DB időponthoz kötött visszaállítási funkciója segít helyreállítani a tárolón belüli véletlen módosításokat, visszaállítani egy törölt fiókot, adatbázist vagy tárolót, vagy visszaállítani bármely régióba (ahol biztonsági másolatok léteztek). A folyamatos biztonsági mentési móddal az elmúlt 30 nap bármely időpontjára visszaállíthatja az adatokat.

Ez a cikk bemutatja, hogyan azonosíthatja a visszaállítási időt, és hogyan állíthat vissza élő vagy törölt Azure Cosmos DB-fiókot. Bemutatja, hogyan állíthatja vissza a fiókot az Azure Portal, a PowerShell, a parancssori felület vagy egy Azure Resource Manager-sablon használatával.

Fiók visszaállítása az Azure Portal használatával

Élő fiók visszaállítása véletlen módosításból

Az Azure Portal használatával visszaállíthat egy teljes élő fiókot, vagy az alatta lévő kijelölt adatbázisokat és tárolókat. Az adatok visszaállításához kövesse az alábbi lépéseket:

  1. Jelentkezzen be az Azure Portalra.

  2. Lépjen az Azure Cosmos DB-fiókjához, és nyissa meg a Pont időponthoz kötött visszaállítás panelt.

    Feljegyzés

    Az Azure Portal visszaállítási panelje csak akkor lesz feltöltve, ha rendelkezik engedéllyel Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read . Az engedély beállításával kapcsolatos további információkért tekintse meg a Biztonsági mentés és visszaállítás engedélyekkel foglalkozó cikket.

  3. A visszaállításhoz töltse ki a következő adatokat:

    • Visszaállítási pont (UTC) – Időbélyeg az elmúlt 30 napban. A fióknak az adott időbélyegen kell léteznie. A visszaállítási pontot UTC-ben adhatja meg. A másodikhoz közel is lehet, ha vissza szeretné állítani. A visszaállítási pont azonosításához kattintson ide hivatkozásra.

    • Hely – Az a célrégió, ahol a fiók helyreáll. A fióknak ebben a régióban kell lennie a megadott időbélyegen (például az USA nyugati régiójában vagy az USA keleti régiójában). A fiók csak azokat a régiókat állíthatja vissza, ahol a forrásfiók létezett.

    • Erőforrás visszaállítása – Választhatja a Teljes fiókot , vagy egy kijelölt adatbázist/tárolót a visszaállításhoz. Az adatbázisoknak és a tárolóknak a megadott időbélyegen kell létezniük. A kiválasztott visszaállítási pont és hely alapján a rendszer feltölti a visszaállítási erőforrásokat, így a felhasználó kiválaszthatja a visszaállítani kívánt adatbázisokat vagy tárolókat.

    • Erőforráscsoport – Erőforráscsoport, amely alatt létrejön és visszaállítja a célfiókot. Az erőforráscsoportnak már léteznie kell.

    • Célfiók visszaállítása – A célfiók neve. A célfiók nevének ugyanazokat az irányelveket kell követnie, mint egy új fiók létrehozásakor. Ezt a fiókot a visszaállítási folyamat hozza létre ugyanabban a régióban, ahol a forrásfiók létezik.

    Élő fiók visszaállítása véletlenül módosított Azure Portalról.

  4. Miután kiválasztotta a fenti paramétereket, a Küldés gombra kattintva elindíthatja a visszaállítást. A visszaállítási költség egyszeri díj, amely az adatok méretétől és a biztonsági mentési tárterület kiválasztott régióban történő költségein alapul. További információkért tekintse meg a Díjszabás szakaszt.

Ha a visszaállítás folyamatban van, a forrásfiók törlése a visszaállítás sikertelenségét eredményezheti.

Visszaállítható időbélyeg élő fiókokhoz

A nem törölt Azure Cosmos DB élő fiókok visszaállításához ajánlott mindig azonosítani a tároló legújabb visszaállítható időbélyegét . Ezt az időbélyeget használva visszaállíthatja a fiókot a legújabb verzióra.

Eseménycsatorna használata a visszaállítási idő azonosításához

Amikor kitölti a visszaállítási időpontot az Azure Portalon, ha segítségre van szüksége a visszaállítási pont azonosításához, kattintson ide hivatkozásra, és az eseménycsatorna paneljére kerül. Az eseménycsatorna a forrásfiók adatbázisainak és tárolóinak létrehozási, csere- és törlési eseményeinek teljes hűséglistáját biztosítja.

Ha például vissza szeretne állítani egy adott tároló törlését vagy frissítését megelőző pontra, ellenőrizze ezt az eseménycsatornát. Az események időrendben csökkenő sorrendben jelennek meg, a legutóbbi események pedig a tetején. Az eredmények között böngészve kiválaszthatja az esemény előtti vagy utáni időt, hogy tovább szűkítse az idejét.

Az eseménycsatorna használatával azonosíthatja a visszaállítási időpontot.

Feljegyzés

Az eseménycsatorna nem jeleníti meg az elemerőforrások módosításait. Az elmúlt 30 napban (amennyiben a fiók akkor létezik) bármikor manuálisan megadhatja az időbélyeget a visszaállításhoz.

Törölt fiók visszaállítása

Az Azure Portal használatával a törléstől számított 30 napon belül teljesen visszaállíthatja a törölt fiókokat. A törölt fiók visszaállításához kövesse az alábbi lépéseket:

  1. Jelentkezzen be az Azure Portalra.

  2. Azure Cosmos DB-erőforrások keresése a globális keresősávon. Felsorolja az összes meglévő fiókját.

  3. Ezután válassza a Visszaállítás gombot. A Visszaállítás panel megjeleníti azoknak a törölt fiókoknak a listáját, amelyek visszaállíthatók a megőrzési időn belül, amely a törléstől számított 30 nap.

  4. Válassza ki a visszaállítani kívánt fiókot.

    Törölt fiók visszaállítása az Azure Portalról.

    Feljegyzés

    Az Azure Portal visszaállítási panelje csak akkor lesz feltöltve, ha rendelkezik engedéllyel Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read . Az engedély beállításával kapcsolatos további információkért tekintse meg a Biztonsági mentés és visszaállítás engedélyekkel foglalkozó cikket.

  5. Válasszon ki egy fiókot, és adja meg a következő adatokat egy törölt fiók visszaállításához:

    • Visszaállítási pont (UTC) – Időbélyeg az elmúlt 30 napban. A fióknak az adott időbélyegen kellett volna léteznie. Adja meg a visszaállítási pontot UTC-ben. A másodikhoz közel is lehet, ha vissza szeretné állítani.

    • Hely – Az a célrégió, ahol a fiókot vissza kell állítani. A forrásfióknak ebben a régióban kell lennie a megadott időbélyegen. Példa az USA nyugati régiójára vagy az USA keleti régiójára.

    • Erőforráscsoport – Erőforráscsoport, amely alatt létrejön és visszaállítja a célfiókot. Az erőforráscsoportnak már léteznie kell.

    • Célfiók visszaállítása – A célfiók nevének ugyanazokat az irányelveket kell követnie, mint egy új fiók létrehozásakor. Ezt a fiókot a visszaállítási folyamat hozza létre ugyanabban a régióban, ahol a forrásfiók létezik.

A visszaállítási művelet állapotának nyomon követése

A visszaállítási művelet kezdeményezése után válassza az Értesítés harang ikont a portál jobb felső sarkában. Ez egy hivatkozást jelenít meg, amely megjeleníti a visszaállított fiók állapotát. Amíg a visszaállítás folyamatban van, a fiók állapota Létrehozás lesz, a visszaállítási művelet befejezése után a fiók állapota Online állapotúra változik.

A visszaállított fiók állapota a művelet befejezésekor a létrehozásról az online állapotra változik.

A visszaállítás részleteinek lekérése a visszaállított fiókból

A visszaállítási művelet befejeződése után érdemes lehet tudnia a forrásfiók azon adatait, amelyekből visszaállította a visszaállítást vagy a visszaállítási időt.

A visszaállítás részleteinek lekéréséhez kövesse az alábbi lépéseket az Azure Portalról:

  1. Jelentkezzen be az Azure Portalra , és lépjen a visszaállított fiókhoz.

  2. Lépjen a Sablon exportálása panelre. Megnyitja a visszaállított fióknak megfelelő JSON-sablont.

Fiók visszaállítása az Azure PowerShell használatával

A fiók visszaállítása előtt telepítse az Azure PowerShell legújabb vagy 9.6.0-nál újabb verzióját. Ezután csatlakozzon az Azure-fiókjához, és válassza ki a szükséges előfizetést a következő parancsokkal:

  1. Jelentkezzen be az Azure-ba a következő paranccsal:

    Connect-AzAccount
    
  2. Válasszon ki egy adott előfizetést a következő paranccsal:

    Select-AzSubscription -Subscription <SubscriptionName>
    

Visszaállítási művelet aktiválása az API for NoSQL-fiókhoz

A következő parancsmag egy példa egy visszaállítási művelet elindítására a visszaállítási paranccsal a célfiók, a forrásfiók, a hely, az erőforráscsoport, a PublicNetworkAccess, a DisableTtl és az időbélyeg használatával:


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

1. példa: A teljes fiók visszaállítása:


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


Ha PublicNetworkAccess nincs beállítva, a visszaállított fiók elérhető a nyilvános hálózatról, győződjön meg arról, hogy a visszaállított fiók nyilvános hálózati hozzáférésének letiltására szolgáló lehetőséget választja DisabledPublicNetworkAccess . A DisableTtl beállítása $true biztosítja, hogy a TTL le legyen tiltva a visszaállított fiókon, és ne adja meg, hogy a paraméter visszaállítsa a fiókot a TTL engedélyezésével, ha korábban be lett állítva.

Feljegyzés

A nyilvános hálózati hozzáférés letiltásával történő visszaállításhoz az Az.CosmosDB minimális stabil verziója 1.12.0.

2. példa: Adott gyűjtemények és adatbázisok visszaállítása. Ez a példa visszaállítja a MyCol1, MyCol2 gyűjteményeket a MyDB1-ből és a teljes MyDB2 adatbázist, amely magában foglalja az alatta lévő összes tárolót.

$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"

3. példa: Az API visszaállítása Gremlin-fiókhoz. Ez a példa visszaállítja a MyDB1 gráf1- és gráf2-gráfjait, valamint a teljes MyDB2 adatbázist, amely magában foglalja az alatta lévő összes tárolót.

$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"

4. példa: Az API visszaállítása táblafiókhoz. Ez a példa visszaállítja a Table1 tábla1 táblát a MyDB1-ből

$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"

Felügyelt identitással konfigurált folyamatos fiók visszaállítása parancssori felülettel

Az ügyfél által felügyelt kulcs (CMK) folyamatos fiókjának visszaállításához tekintse meg az itt megadott lépéseket

A visszaállítás részleteinek lekérése a visszaállított fiókból

Importálja a Az.CosmosDB modul 1.12.0-s verzióját, és futtassa a következő parancsot a visszaállítás részleteinek lekéréséhez. A restoreTimestamp a restoreParameters objektum alatt lesz:

Get-AzCosmosDBAccount -ResourceGroupName MyResourceGroup -Name MyCosmosDBDatabaseAccount 

Visszaállítható erőforrások számbavétele a NoSQL-hez készült API-hoz

Az enumerálási parancsmagok segítenek felderíteni a különböző időbélyegek esetén a visszaállításhoz rendelkezésre álló erőforrásokat. Emellett a helyreállítható fiók, az adatbázis és a tárolóerőforrások kulcsfontosságú eseményeit is biztosítják.

Az aktuális előfizetésben visszaállítható összes fiók listázása

Futtassa a Get-AzCosmosDBRestorableDatabaseAccount PowerShell-parancsot az aktuális előfizetésben visszaállítható összes fiók listázásához.

A válasz tartalmazza az összes visszaállítható (élő és törölt) adatbázisfiókot, valamint azokat a régiókat, amelyekből visszaállíthatók.

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

A fiókhoz vagy DeletionTime a fiókhoz hasonlóan CreationTime van egy CreationTime vagy DeletionTime a régió is. Ezekben az időkben kiválaszthatja a megfelelő régiót és egy érvényes időtartományt a régióba való visszaállításhoz.

Sql-adatbázisok összes verziójának listázása élő adatbázisfiókban

Az adatbázisok összes verziójának felsorolásával kiválaszthatja a megfelelő adatbázist olyan helyzetekben, amikor az adatbázis tényleges létezési ideje ismeretlen.

Futtassa a következő PowerShell-parancsot az adatbázisok összes verziójának listázásához. Ez a parancs csak élő fiókokkal működik. A DatabaseAccountInstanceId paraméterek és a Location paraméterek a name parancsmag válaszából Get-AzCosmosDBRestorableDatabaseAccount és location tulajdonságaiból származnak. Az DatabaseAccountInstanceId attribútum a instanceId visszaállított forrásadatbázis-fiók tulajdonságára hivatkozik:


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

Adatbázis SQL-tárolóinak összes verziójának listázása élő adatbázisfiókban

Az ALÁBBI paranccsal listázhatja az SQL-tárolók összes verzióját. Ez a parancs csak élő fiókokkal működik. A DatabaseRId paraméter a ResourceId visszaállítani kívánt adatbázis. Ez a parancsmag válaszában Get-AzCosmosdbSqlRestorableDatabase található attribútum értékeownerResourceid. A válasz tartalmazza az adatbázis összes tárolóján végrehajtott műveletek listáját is.


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

Olyan adatbázisok vagy tárolók keresése, amelyek bármely adott időbélyegen visszaállíthatók

Az alábbi paranccsal lekérheti azon adatbázisok vagy tárolók listáját, amelyek bármikor visszaállíthatók egy adott időbélyegen. Ez a parancs csak élő fiókokkal működik.


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

Visszaállítható erőforrások számbavétele a MongoDB API-ban

Az alábbi felsorolási parancsok segítenek felderíteni a különböző időbélyegeken elérhető visszaállítási erőforrásokat. Emellett a helyreállítható fiók, az adatbázis és a tárolóerőforrások kulcsfontosságú eseményeit is biztosítják. Ezek a parancsok csak élő fiókokhoz működnek, és hasonlóak a NoSQL-parancsokhoz készült API-hoz, de MongoDB a parancsnév helyett sql.

MongoDB-adatbázisok összes verziójának listázása élő adatbázisfiókban


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

Az adatbázis MongoDB-gyűjteményeinek összes verziójának listázása egy élő adatbázisfiókban


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

Egy MongoDB-adatbázisfiók összes olyan erőforrásának listázása, amely egy adott időbélyegen és régióban visszaállítható


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

Visszaállítható erőforrások számbavétele a Gremlin API-hoz

Az enumerálási parancsmagok segítenek felderíteni a különböző időbélyegek esetén a visszaállításhoz rendelkezésre álló erőforrásokat. Emellett a helyreállítható fiók, az adatbázis és a gráferőforrások kulcsfontosságú eseményeit is biztosítják.

Gremlin-adatbázisok összes verziójának listázása élő adatbázisfiókban

Az adatbázisok összes verziójának felsorolásával kiválaszthatja a megfelelő adatbázist olyan helyzetekben, amikor az adatbázis tényleges létezési ideje ismeretlen. Futtassa a következő PowerShell-parancsot az adatbázisok összes verziójának listázásához. Ez a parancs csak élő fiókokkal működik. A DatabaseAccountInstanceId paraméterek és a Location paraméterek a name parancsmag válaszából Get-AzCosmosDBRestorableDatabaseAccount és location tulajdonságaiból származnak. Az DatabaseAccountInstanceId attribútum a instanceId visszaállított forrásadatbázis-fiók tulajdonságára hivatkozik:

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

Egy adatbázis Gremlin-gráfjainak összes verziójának listázása élő adatbázisfiókban

Az alábbi paranccsal listázhatja a Gremlin-gráfokhoz készült API összes verzióját. Ez a parancs csak élő fiókokkal működik. A DatabaseRId paraméter a ResourceId visszaállítani kívánt adatbázis. Ez a parancsmag válaszában Get-AzCosmosdbGremlinRestorableDatabase található attribútum értékeownerResourceid. A válasz tartalmazza az adatbázis összes grafikonján végrehajtott műveletek listáját is.

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

Adatbázisok vagy grafikonok keresése, amelyek bármely adott időbélyegen visszaállíthatók

Az alábbi paranccsal lekérheti az adatbázisok vagy gráfok listáját, amelyek bármikor visszaállíthatók egy adott időbélyegen. Ez a parancs csak élő fiókokkal működik.

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

Visszaállítható erőforrások számbavétele a Table API-hoz

Az enumerálási parancsmagok segítenek felderíteni a különböző időbélyegek esetén a visszaállításhoz rendelkezésre álló erőforrásokat. Emellett a helyreállítható fiók- és táblaerőforrások kulcsfontosságú eseményeit is biztosítják.

Adatbázis összes táblaverziójának listázása élő adatbázisfiókban

Az alábbi paranccsal listázhatja a táblák összes verzióját. Ez a parancs csak élő fiókokkal működik.

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

Olyan táblák keresése, amelyek bármikor visszaállíthatók egy adott időbélyegben

Az alábbi paranccsal lekérheti az adott időbélyegen visszaállítható táblák listáját. Ez a parancs csak élő fiókokkal működik.

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

Fiók visszaállítása az Azure CLI használatával

A fiók visszaállítása előtt telepítse az Azure CLI-t az alábbi lépésekkel:

  1. Az Azure CLI legújabb verziójának telepítése

    • Telepítse az Azure CLI legújabb vagy 2.52.0-nál újabb verzióját.
    • Ha már telepítette a parancssori felületet, futtassa az upgrade a parancsot a legújabb verzióra való frissítéshez. Ez a parancs csak a 2.52.0-snál magasabb CLI-verzióval működik. Ha korábbi verzióval rendelkezik, a fenti hivatkozáson telepítheti a legújabb verziót.
  2. Jelentkezzen be, és válassza ki az előfizetését

    • Jelentkezzen be az Azure-fiókjába a paranccsal az login .
    • Válassza ki a szükséges előfizetést az account set -s <subscriptionguid> a paranccsal.

Visszaállítási művelet aktiválása az Azure CLI-vel

A visszaállítás aktiválásának legegyszerűbb módja, ha kiadja a visszaállítási parancsot a célfiók, a forrásfiók, a hely, az erőforráscsoport, az időbélyeg (UTC- és opcionálisan az adatbázis- és tárolónevek) nevével. A visszaállítási művelet aktiválására az alábbi példákat mutatjuk be:

Új Azure Cosmos DB-fiók létrehozása meglévő fiókból való visszaállítással


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 

Ha --public-network-access nincs beállítva, a visszaállított fiók elérhető a nyilvános hálózatról. Győződjön meg arról, hogy a Disabled--public-network-access visszaállított fiók nyilvános hálózati hozzáférésének megakadályozására szolgáló lehetőséget választja. A disable-ttl beállítása a $true biztosítja, hogy a TTL le legyen tiltva a visszaállított fiókon, és ha nem adja meg ezt a paramétert, akkor a fiók tTL-engedélyezése engedélyezve van, ha korábban be lett állítva.

Feljegyzés

A nyilvános hálózati hozzáférés letiltásával történő visszaállításhoz az Azure-cli minimális stabil verziója a 2.52.0.

Új Azure Cosmos DB-fiók létrehozása úgy, hogy csak a kijelölt adatbázisokat és tárolókat állítja vissza egy meglévő adatbázisfiókból


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

Hozzon létre egy új Azure Cosmos DB API-t Gremlin-fiókhoz úgy, hogy csak a kijelölt adatbázisokat és gráfokat állítja vissza egy meglévő, Gremlin-fiókhoz készült API-ból


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 

Hozzon létre egy új Azure Cosmos DB API-t a Table-fiókhoz, ha csak a kijelölt táblákat állítja vissza egy meglévő API-ból a Table-fiókhoz


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 

A visszaállítás részleteinek lekérése a visszaállított fiókból

Futtassa a következő parancsot a visszaállítás részleteinek lekéréséhez. A az cosmosdb show parancs kimenete createMode a tulajdonság értékét jeleníti meg. Ha az érték Visszaállítás értékre van állítva, az azt jelzi, hogy a fiók egy másik fiókból lett visszaállítva. A restoreParameters tulajdonság további részletekkel rendelkezik, például restoreSourcea forrásfiók azonosítójával. A paraméter utolsó GUID azonosítója restoreSource a instanceId forrásfiók. És az restoreTimestamp objektum alatt restoreParameters lesz:

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

Visszaállítható erőforrások számbavétele a NoSQL-hez készült API-hoz

Az alábbi felsorolási parancsok segítenek felderíteni a különböző időbélyegeken elérhető visszaállítási erőforrásokat. Emellett a helyreállítható fiók, az adatbázis és a tárolóerőforrások kulcsfontosságú eseményeit is biztosítják.

Az aktuális előfizetésben visszaállítható összes fiók listázása

Futtassa a következő Azure CLI-parancsot az aktuális előfizetésben visszaállítható összes fiók listázásához

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

A válasz tartalmazza az összes visszaállítható adatbázisfiókot (élő és törölt), valamint azokat a régiókat, amelyekből visszaállíthatók:

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

A fiókhoz vagy DeletionTime a fiókhoz hasonlóan CreationTime van egy CreationTime vagy DeletionTime a régió is. Ezekben az időkben kiválaszthatja a megfelelő régiót és egy érvényes időtartományt a régióba való visszaállításhoz.

Adatbázis-verziók listázása élő adatbázisfiókban

Az adatbázisok összes verziójának felsorolásával kiválaszthatja a megfelelő adatbázist olyan helyzetekben, amikor az adatbázis tényleges létezési ideje ismeretlen.

Futtassa a következő Azure CLI-parancsot az adatbázisok összes verziójának listázásához. Ez a parancs csak élő fiókokkal működik. A instance-id paraméterek és a location paraméterek a name parancs válaszából és location tulajdonságaiból származnak az cosmosdb restorable-database-account list . Az instanceId attribútum a visszaállítandó forrásadatbázis-fiók tulajdonsága is:

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

Ez a parancskimenet most megjeleníti az adatbázis létrehozását és törlését.

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

Adatbázis SQL-tárolóinak összes verziójának listázása élő adatbázisfiókban

Az ALÁBBI paranccsal listázhatja az SQL-tárolók összes verzióját. Ez a parancs csak élő fiókokkal működik. A database-rid paraméter a ResourceId visszaállítani kívánt adatbázis. Ez a parancs válaszában az cosmosdb sql restorable-database list található attribútum értékeownerResourceid.

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

Ez a parancskimenet az adatbázis összes tárolóján végrehajtott műveletek listáját tartalmazza:

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

Olyan adatbázisok vagy tárolók keresése, amelyek bármely adott időbélyegen visszaállíthatók

Az alábbi paranccsal lekérheti azon adatbázisok vagy tárolók listáját, amelyek bármikor visszaállíthatók egy adott időbélyegen. Ez a parancs csak élő fiókokkal működik.


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

Visszaállítható erőforrások számbavétele a MongoDB-fiókhoz készült API-hoz

Az alábbi felsorolási parancsok segítenek felderíteni a különböző időbélyegeken elérhető visszaállítási erőforrásokat. Emellett a helyreállítható fiók, az adatbázis és a tárolóerőforrások kulcsfontosságú eseményeit is biztosítják. Ezek a parancsok csak élő fiókok esetén működnek.

MongoDB-adatbázisok összes verziójának listázása élő adatbázisfiókban

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

Az adatbázis MongoDB-gyűjteményeinek összes verziójának listázása egy élő adatbázisfiókban

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

Egy mongodb-adatbázisfiók összes olyan erőforrásának listázása, amely egy adott időbélyegen és régióban visszaállítható

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"

Adatbázis-verziók listázása élő adatbázisfiókban

Az alábbi felsorolási parancsok segítenek felderíteni a különböző időbélyegeken elérhető visszaállítási erőforrásokat. Emellett a helyreállítható fiók, az adatbázis és a gráferőforrások kulcsfontosságú eseményeit is biztosítják. Ezek a parancsok csak élő fiókok esetén működnek.

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

Ez a parancskimenet most megjeleníti az adatbázis létrehozását és törlését.

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

Egy adatbázis Gremlin-gráfjainak összes verziójának listázása élő adatbázisfiókban

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

Ez a parancskimenet az adatbázis összes tárolóján végrehajtott műveletek listáját tartalmazza:

[ { 

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

Adatbázisok vagy grafikonok keresése, amelyek bármely adott időbélyegen visszaállíthatók

 
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" 

Ez a parancskimenet a visszaállítható grafikonokat jeleníti meg:

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

Visszaállítható erőforrások számbavétele a Table-fiók API-hoz

Az alábbi felsorolási parancsok segítenek felderíteni a különböző időbélyegeken elérhető visszaállítási erőforrásokat. Emellett a helyreállítható fiók és a Table-erőforrások API-jának kulcseseményeit is biztosítják. Ezek a parancsok csak élő fiókok esetén működnek.

A táblák összes verziójának listázása egy élő adatbázisfiókban

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" 

  }, 
] 

A Table-fiókhoz tartozó API összes erőforrásának listázása, amelyek egy adott időbélyegen és régióban állíthatók vissza

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" 

A következő a parancs eredménye.

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

  ] 
} 

Visszaállítás az Azure Resource Manager-sablonnal

A fiókokat azure Resource Manager-sablon (ARM) használatával is visszaállíthatja. A sablon meghatározásakor adja meg a következő paramétereket:

API visszaállítása NoSQL- vagy MongoDB-fiókhoz ARM-sablon használatával

  1. Állítsa a paramétert createMode visszaállításra.
  2. Adja meg a restoreParameters, figyelje meg, hogy az restoreSource érték a forrásfiók parancsának az cosmosdb restorable-database-account list kimenetéből lesz kinyerve. A rendszer a fióknév példányazonosító attribútumát használja a visszaállításhoz.
  3. Állítsa a paramétert restoreMode PointInTime-ra, és konfigurálja az restoreTimestampInUtc értéket.

Az alábbi ARM-sablonnal visszaállíthat egy fiókot a NoSQL-hez vagy a MongoDB-hez készült Azure Cosmos DB API-hoz. A következő lépésben más API-kra is példákat láthat.

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

A Gremlin-fiók API-jának visszaállítása ARM-sablonnal

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

A Table-fiók API-jának visszaállítása ARM-sablonnal

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

Ezután helyezze üzembe a sablont az Azure PowerShell vagy az Azure CLI használatával. Az alábbi példa bemutatja, hogyan helyezheti üzembe a sablont egy Azure CLI-paranccsal:

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

Következő lépések