Dela via


Återställa en enskild klientorganisation med ett SaaS-program för databas per klientorganisation

Gäller för:Azure SQL Database

Modellen databas per klient gör det enkelt att återställa en enskild klientorganisation till en tidigare tidpunkt utan att påverka andra klienter.

I den här självstudien lär du dig två dataåterställningsmönster:

  • Återställa en databas till en parallell databas (sida vid sida).
  • Återställ en databas på plats och ersätt den befintliga databasen.
Mönster Beskrivning
Återställa till en parallell databas Det här mönstret kan användas för uppgifter som granskning, granskning och efterlevnad så att en klientorganisation kan inspektera sina data från en tidigare tidpunkt. Klientorganisationens aktuella databas förblir online och oförändrad.
Återställ på plats Det här mönstret används vanligtvis för att återställa en klientorganisation till en tidigare tidpunkt, efter att en klientorganisation av misstag har tagit bort eller skadat data. Den ursprungliga databasen tas bort från linjen och ersätts med den återställde databasen.

Se till att följande förhandskrav är slutförda för att kunna slutföra den här guiden:

Introduktion till SaaS-klientåterställningsmönster

Det finns två enkla mönster för att återställa en enskild klientorganisations data. Eftersom klientdatabaser är isolerade från varandra har återställning av en klientorganisation ingen inverkan på någon annan klientorganisations data. Funktionen för återställning till tidpunkt (PITR) i Azure SQL Database används i båda mönstren. PITR skapar alltid en ny databas.

  • Återställ parallellt: I det första mönstret skapas en ny parallell databas tillsammans med klientorganisationens aktuella databas. Klientorganisationen får sedan skrivskyddad åtkomst till den återställde databasen. Återställda data kan granskas och kan användas för att skriva över aktuella datavärden. Det är upp till appdesignern att avgöra hur klientorganisationen kommer åt den återställde databasen och vilka alternativ för återställning som tillhandahålls. Att bara tillåta klientorganisationen att granska sina data vid en tidigare tidpunkt kan vara allt som krävs i vissa scenarier.

  • Återställ på plats: Det andra mönstret är användbart om data har förlorats eller skadats och klientorganisationen vill återgå till en tidigare punkt. Klientorganisationen tas bort från linjen medan databasen återställs. Den ursprungliga databasen tas bort och den återställda databasen har bytt namn. Säkerhetskopieringskedjan för den ursprungliga databasen är fortfarande tillgänglig efter borttagningen, så du kan återställa databasen till en tidigare tidpunkt, om det behövs.

Om databasen använder aktiv geo-replikering och återställning parallellt rekommenderar vi att du kopierar nödvändiga data från den återställde kopian till den ursprungliga databasen. Om du ersätter den ursprungliga databasen med den återställde databasen måste du konfigurera om och synkronisera om geo-replikering.

Hämta Wingtip Tickets SaaS-programskript för databas per klientorganisation

Wingtip Tickets SaaS Multitenant Database-skript och programkällkod finns i WingtipTicketsSaaS-DbPerTenant GitHub-lagringsplatsen. Anvisningar för hur du laddar ned och avblockera SaaS-skript för Wingtip-biljetter finns i den allmänna vägledningen.

Innan du börjar

När en databas skapas kan det ta 10 till 15 minuter innan den första fullständiga säkerhetskopian är tillgänglig att återställa från. Om du precis har installerat programmet kan du behöva vänta några minuter innan du provar det här scenariot.

Simulera en klientorganisation som oavsiktligt tar bort data

För att demonstrera dessa återställningsscenarier tar du först bort en händelse av misstag i en av klientdatabaserna.

Öppna appen Händelser för att granska de aktuella händelserna

  1. Öppna Händelsehubben (http://events.wtp.<user>.trafficmanager.net) och välj Contosos konserthus.

    A screenshot of the events hub page of the sample application. The entry for Contoso Concert Hall is boxed in red.

  2. Bläddra i listan över händelser och anteckna den sista händelsen i listan.

    A screenshot from the sample application. The last event appears.

Ta bort den senaste händelsen av misstag

  1. I PowerShell ISE öppnar ...\Learning Modules\Business Continuity and Disaster Recovery\RestoreTenant\Demo-RestoreTenant.ps1du och anger följande värde:

    • = $DemoScenario 1, Ta bort den senaste händelsen (utan biljettförsäljning).
  2. Tryck på F5 för att köra skriptet och ta bort den senaste händelsen. Följande bekräftelsemeddelande visas:

    Deleting last unsold event from Contoso Concert Hall ...
    Deleted event 'Seriously Strauss' from Contoso Concert Hall venue.
    
  3. Sidan Contoso-händelser öppnas. Rulla nedåt och kontrollera att händelsen är borta. Om händelsen fortfarande finns i listan väljer du Uppdatera och kontrollerar att den är borta. A screenshot from the sample application. The last event is removed.

Återställa en klientdatabas parallellt med produktionsdatabasen

Den här övningen återställer Contoso Concert Hall-databasen till en tidpunkt innan händelsen togs bort. Det här scenariot förutsätter att du vill granska borttagna data i en parallell databas.

Skriptet Restore-TenantInParallel.ps1 skapar en parallell klientdatabas med namnet ContosoConcertHall_old med en parallell katalogpost. Det här återställningsmönstret passar bäst för återställning efter en mindre dataförlust. Du kan också använda det här mönstret om du behöver granska data i kompatibilitets- eller granskningssyfte. Det är den rekommenderade metoden när du använder aktiv geo-replikering.

  1. Slutför avsnittet Simulera en klientorganisation som oavsiktligt tar bort data.
  2. Öppna i PowerShell ISE ...\Learning Modules\Business Continuity and Disaster Recovery\RestoreTenant\Demo-RestoreTenant.ps1.
  3. Ställ in $DemoScenario = 2, Återställ klientorganisationen parallellt.
  4. Tryck på F5 för att köra skriptet.

Skriptet återställer klientdatabasen till en tidpunkt innan du tog bort händelsen. Databasen återställs till en ny databas med namnet ContosoConcertHall_old. Katalogmetadata som finns i den återställda databasen tas bort och sedan läggs databasen till i katalogen med hjälp av en nyckel som skapats från ContosoConcertHall_old namnet.

Demoskriptet öppnar sidan händelser för den nya klientdatabasen i webbläsaren. Observera från URL:en http://events.wingtip-dpt.<user>.trafficmanager.net/contosoconcerthall_old att den här sidan visar data från den återställde databasen där _old läggs till i namnet.

Rulla händelserna som visas i webbläsaren för att bekräfta att händelsen som togs bort i föregående avsnitt återställdes.

Att exponera den återställde klientorganisationen som ytterligare en klientorganisation, med sin egen händelseapp, är sannolikt inte hur du ger en klientåtkomst till återställde data. Det används för att illustrera återställningsmönstret. Normalt ger du skrivskyddad åtkomst till gamla data och behåller den återställde databasen under en definierad period. I exemplet kan du ta bort den återställda klientposten när du är klar genom att köra scenariot Ta bort återställd klientorganisation .

  1. Ange $DemoScenario = 4, Ta bort återställd klientorganisation.
  2. Tryck på F5 för att köra skriptet.
  3. Posten ContosoConcertHall_old tas nu bort från katalogen. Stäng händelsesidan för den här klientorganisationen i webbläsaren.

Återställa en klientorganisation på plats och ersätta den befintliga klientdatabasen

Den här övningen återställer Contoso Concert Hall-klienten till en punkt innan händelsen togs bort. Skriptet Restore-TenantInPlace återställer en klientdatabas till en ny databas och tar bort originalet. Det här återställningsmönstret passar bäst för återställning efter allvarlig dataskada och klientorganisationen kan behöva hantera betydande dataförlust.

  1. Öppna filen i PowerShell ISE Demo-RestoreTenant.ps1 .
  2. Ange $DemoScenario = 5, Återställ klientorganisationen på plats.
  3. Tryck på F5 för att köra skriptet.

Skriptet återställer klientdatabasen till en punkt innan händelsen togs bort. Det tar först Contoso Concert Hall-klienten av linjen för att förhindra ytterligare uppdateringar. Sedan skapas en parallell databas genom att återställa från återställningspunkten. Den återställde databasen namnges med en tidsstämpel för att se till att databasnamnet inte står i konflikt med det befintliga klientdatabasnamnet. Därefter tas den gamla klientdatabasen bort och den återställda databasen byter namn till det ursprungliga databasnamnet. Slutligen är Contoso Concert Hall online för att ge appen åtkomst till den återställde databasen.

Du har återställt databasen till en tidpunkt innan händelsen togs bort. När sidan Händelser öppnas bekräftar du att den senaste händelsen återställdes.

När du har återställt databasen tar det ytterligare 10 till 15 minuter innan den första fullständiga säkerhetskopian är tillgänglig för återställning från igen.

Kommentar

Det går inte att återställa från databaser med flera klientorganisationer till en enda klientorganisation.

Nästa steg

I den här självstudiekursen lärde du dig att:

  • Återställa en databas till en parallell databas (sida vid sida).
  • Återställ en databas på plats.

Ytterligare resurser