Dela via


Återställa en borttagen databas eller container i samma konto med hjälp av kontinuerlig säkerhetskopiering

GÄLLER FÖR: NoSQL MongoDB Gremlin Bord

Med funktionen för återställning av samma konto för kontinuerlig säkerhetskopiering i Azure Cosmos DB kan du återställa en borttagen databas eller container i samma befintliga konto. Du kan utföra den här återställningsåtgärden med hjälp av Azure Portal, Azure CLI eller Azure PowerShell. Den här funktionen hjälper dig att återställa data från oavsiktliga borttagningar av databaser eller containrar.

Vad återställs?

Du kan välja att återställa valfri kombination av borttagna etablerade dataflödescontainrar eller databaser med delat dataflöde. De angivna databaserna eller containrarna återställs i alla regioner som finns i kontot när återställningsåtgärden startas. Varaktigheten för återställningen beror på mängden data som måste återställas och de regioner där kontot finns. Eftersom en överordnad databas måste finnas innan en container kan återställas måste databasåterställningen göras innan du återställer den underordnade containern.

Mer information om vilka kontinuerliga säkerhetskopieringsåterställningar och vad den inte återställer finns i introduktionen till kontinuerlig säkerhetskopiering.

Kommentar

När de borttagna databaserna eller containrarna återställs inom samma konto ska resursen behandlas som nya resurser. Befintliga sessions- eller fortsättningstoken som används från dina klientprogram blir ogiltiga. Vi rekommenderar att du uppdaterar den lokalt lagrade sessionen och fortsättningstoken innan du utför ytterligare läsningar eller skrivningar på de nyligen återställda resurserna. Vi rekommenderar också att du startar om SDK-klienter för att automatiskt uppdatera sessions- och fortsättningstoken som lagras i SDK-cachen.

Om programmet lyssnar på ändringsflödeshändelser i den återställde databasen eller containrarna bör det starta om ändringsflödet från början efter en återställningsåtgärd. Den återställde resursen har bara ändringsflödeshändelserna från och med resursens livslängd efter återställningen. Alla ändringsflödeshändelser innan resursen tas bort sprids inte till ändringsflödet. Vi rekommenderar också att du startar om frågeåtgärder efter en återställningsåtgärd. Befintliga frågeåtgärder kan ha genererat fortsättningstoken som blir ogiltiga efter en återställningsåtgärd.

Behörigheter

Du kan begränsa återställningsbehörigheterna för ett konto för kontinuerlig säkerhetskopiering till en viss roll eller ett specifikt huvudnamn. Mer information om behörigheter och hur du tilldelar dem finns i Behörigheter för kontinuerlig säkerhetskopiering och återställning.

Förstå identifierare för containerinstanser

När en borttagen container återställs inom samma konto har den återställde containern samma namn och resourceId värde som den ursprungliga containern som tidigare togs bort. Använd fältet för att enkelt skilja mellan de olika versionerna av containern CollectionInstanceId . Fältet CollectionInstanceId skiljer mellan de olika versionerna av en container. Dessa versioner omfattar både den ursprungliga containern som togs bort och den nyligen återställda containern. Instansidentifieraren lagras som en del av återställningsparametrarna i den återställde containerns resursdefinition. Den ursprungliga containern har inte återställningsparametrar som definierats i resursdefinitionen för containern. Varje senare återställd instans av en container har en unik instansidentifierare.

Här är ett exempel:

Instans Instansidentifierare
Ursprunglig container inte definierad
Första återställningen av containern 11111111-1111-1111-1111-111111111111
Andra återställningen av containern 22222222-2222-2222-2222-222222222222

Scenarier för kontoåterställning

Azure Cosmos DB-funktionen för återställning till en tidpunkt i samma konto hjälper dig att återställa från en oavsiktlig borttagning på en databas eller en container. Den här funktionen återställs till alla regioner där tidigare säkerhetskopior fanns i samma konto. Du kan använda läget för kontinuerlig säkerhetskopiering för att återställa till valfri tidpunkt under de senaste 30 dagarna eller 7 dagarna beroende på den konfigurerade nivån.

Tänk dig ett exempelscenario där återställningsåtgärden riktar sig mot ett befintligt konto. I det här scenariot kan du utföra återställningsåtgärden på en angiven databas eller container om den angivna resursen var tillgänglig i den aktuella skrivregionen från och med återställningens källdatabas eller containertidsstämpel. Funktionen för kontoåterställning tillåter inte återställning av befintliga (eller ej borttagna) databaser eller containrar inom samma konto. Om du vill återställa liveresurser riktar du återställningsåtgärden mot ett nytt konto.

Överväg ytterligare två scenarier:

  • Scenario 1: Azure Cosmos DB-kontot har två regioner: USA , västra (skrivregion) och USA , östra (läsregion) som tidsstämpel T1. Anta att containern (C1) skapas vid tidsstämpeln T1 och togs bort vid T2. Containern C1 kan återställas inom kvarhållningsperioden. Överväg nu en situation där kontots skrivregion redundas över till USA, östra. Nu blir USA, västra läsregionen. Även med den här situationen C1 kan återställas inom kvarhållningsperioden så länge som C1 fanns i regionen USA , östra när återställningstidsstämpeln angavs.

  • Scenario 2: Azure Cosmos DB-kontot har en region usa, västra vid tidsstämpeln T3. Anta att CT2 skapades vid tidsstämpeln T4 och sedan togs bort vid T5. Den nya regionen USA , östra lades till vid T6, och sedan utfördes redundans till USA , östra för att göra den till en ny skrivregion från och med T7. I det här scenariot CT2 går det inte att återställa eftersom CT2 det inte fanns i regionen USA , östra.

Här är en lista över de aktuella beteendeegenskaperna för funktionen för återställning till tidpunkt i kontot:

  • Containrar med delat dataflöde återställs med sin databas för delat dataflöde.

  • Återställningsåtgärder för containrar kräver att den ursprungliga databasen finns. Den här begränsningen innebär att återställningen av den överordnade databasen måste utföras innan du försöker återställa en borttagen underordnad container.

  • Återställningen av en resurs (databas eller container) misslyckas om en annan återställningsåtgärd för samma resurs redan pågår.

  • Det går inte att skapa en container i en databas med delat dataflöde förrän alla återställningsalternativ har slutförts.

  • Återställning av en container eller databas blockeras om en borttagningsåtgärd redan pågår i containern eller databasen.

  • Om ett konto har fler än tre olika resurser kan fler än tre resurser i ett konto inte återställas parallellt.

  • Återställningen av en databas eller containerresurs lyckas när resursen finns vid återställningstiden i kontots aktuella skrivregion.

  • Återställning av samma konto kan inte utföras medan några åtgärder på kontonivå, till exempel lägga till region, ta bort region eller redundansväxla, pågår.

Nästa steg