Återställa med hjälp av automatiserade databassäkerhetskopior – Azure SQL Database & SQL Managed Instance

GÄLLER FÖR: Azure SQL Database Azure SQL Managed Instance

Följande alternativ är tillgängliga för databasåterställning med hjälp av automatiserade databassäkerhetskopior. Du kan:

  • Skapa en ny databas på samma server med återställning till en viss tidpunkt inom kvarhållningsperioden.
  • Skapa en databas på samma server med återställning till borttagningstiden för en borttagen databas.
  • Skapa en ny databas på valfri server i någon annan region med återställning till de senaste säkerhetskopiorna.
  • Skapa en ny databas på valfri server i någon annan region med återställning till de senaste replikerade säkerhetskopiorna.

Om du har konfigurerat långsiktig kvarhållning av säkerhetskopiorkan du även skapa en ny databas från valfri säkerhetskopia för långsiktig kvarhållning på valfri server.

Viktigt

Du kan inte skriva över en befintlig databas under återställningen.

När du använder tjänstnivån Standard eller Premium kan databasåterställningen medföra en extra lagringskostnad. Den extra kostnaden uppstår när den återställda databasens maximala storlek är större än mängden lagringsutrymme som ingår i måldatabasens tjänstnivå och prestandanivå. Prisinformation om extra lagring finns på SQL Database prissättningssidan. Om den faktiska mängden använt utrymme är mindre än mängden lagringsutrymme som ingår kan du undvika den extra kostnaden genom att ange den maximala databasstorleken till den inkluderade mängden.

Återställningstid

Hur lång tid det tar att återställa en databas med hjälp av automatiska databassäkerhetskopior påverkas av flera faktorer:

  • Databasens storlek.
  • Databasens beräkningsstorlek.
  • Antalet berörda transaktionsloggar.
  • Mängden aktivitet som behöver upprepas för att återställa till återställningspunkten.
  • Nätverksbandbredden om återställningen görs till en annan region.
  • Antalet samtidiga återställningsförfrågningar som bearbetas i målregionen.

Återställningen ta flera timmar för en stor eller mycket aktiv databas. Efter ett långvarigt avbrott i en region kan ett stort antal förfrågningar om geo-återställning för haveriberedskap initieras ungefär samtidigt. Om många sådana förfrågningar körs samtidigt kan återställningstiden för enskilda databaser öka. De flesta databasåterställningar slutförs på mindre än 12 timmar.

Det finns begränsningar för antalet samtidiga återställningsförfrågningar för enskilda prenumerationer. De här begränsningarna gäller för alla kombinationer av återställningar till en tidpunkt, geo-återställningar och återställningar från säkerhetskopior med långsiktig kvarhållning.

Distributionsalternativ Max antal samtidiga förfrågningar som bearbetas Max antal samtidiga förfrågningar som skickas
Enstaka databas (per prenumeration) 30 100
Elastisk pool (per pool) 4 2000

Det finns ingen inbyggd metod för att återställa hela servern. Ett exempel på hur du utför den här uppgiften finns i Azure SQL Database: Fullständig serveråterställning.

Viktigt

Om du vill återställa med hjälp av automatiska säkerhetskopieringar måste du vara medlem i rollen SQL Server-deltagare eller SQL-hanterad instansdeltagare (beroende på återställningsmålet) i prenumerationen, eller så måste du vara prenumerationsägare. Mer information finns i Azure RBAC: Inbyggda roller. Du kan återställa med hjälp av Azure Portal, PowerShell eller REST API. Du kan inte använda Transact-SQL.

Återställning från tidpunkt

Du kan återställa en fristående databas, pooldatabas eller instansdatabas till en tidigare tidpunkt med hjälp av Azure Portal, PowerShell eller REST API. Begäran kan ange valfri tjänstnivå eller beräkningsstorlek för den återställda databasen. Kontrollera att du har tillräckligt med resurser på den server som du återställer databasen till.

När återställningen är klar skapas en ny databas på samma server som den ursprungliga databasen. Den återställda databasen debiteras enligt normalpris, baserat på tjänstnivå och beräkningsstorlek. Du debiteras inte förrän databasåterställningen är klar.

Vanligtvis återställer du en databas till en tidigare punkt i återställningssyfte. Du kan hantera den återställda databasen som en ersättning för den ursprungliga databasen eller använda den som en datakälla för att uppdatera den ursprungliga databasen.

Viktigt

Du kan bara köra återställning på samma server. Återställning mellan servrar stöds inte av återställning till tidpunkt.

  • Databasersättning

    Om du vill att den återställda databasen ska ersätta den ursprungliga databasen bör du ange den ursprungliga databasens beräkningsstorlek och tjänstnivå. Du kan sedan byta namn på den ursprungliga databasen och ge den återställda databasen det ursprungliga namnet med hjälp av kommandot ALTER DATABASE i T-SQL.

  • Dataräddning

    Om du planerar att hämta data från den återställda databasen för att återställa från ett användar- eller programfel måste du skriva och köra ett dataåterställningsskript som extraherar data från den återställda databasen och som gäller för den ursprungliga databasen. Återställningen kan ta lång tid att slutföra, men återställningsdatabasen visas i databaslistan under hela återställningsprocessen. Om du tar bort databasen under återställningen avbryts återställningen och du debiteras inte för databasen som inte slutförde återställningen.

Återställning till tidpunkt med hjälp av Azure Portal

Du kan återställa en enkel databas eller instansdatabas till en tidpunkt från översiktsbladet för den databas som du vill återställa i Azure Portal.

SQL Database

Om du vill återställa en databas till en tidpunkt med Azure Portal databasen öppnar du databasens översiktssida och väljer Återställ i verktygsfältet. Välj säkerhetskopieringskälla och välj den tidpunkt då en ny databas ska skapas.

Skärmbild av alternativ för databasåterställning för SQL Database.

SQL-hanterad instans

Om du vill återställa en hanterad instansdatabas till en tidpunkt med Azure Portal databasen öppnar du databasens översiktssida och väljer Återställ i verktygsfältet. Välj den tidpunkt för säkerhetskopiering som en ny databas ska skapas från.

Skärmbild av alternativ för databasåterställning för SQL hanterad instans.

Tips

Information om hur du programmässigt återställer en databas från en säkerhetskopia finns i Programmatisk återställning med automatiska säkerhetskopieringar.

Återställning av borttagna databaser

Du kan återställa en borttagen databas till borttagningstiden, eller en tidigare tidpunkt, på samma server eller samma hanterade instans. Du kan göra detta via Azure-portalen, PowerShell eller REST (createMode=Restore). Du återställer en borttagen databas genom att skapa en ny databas från säkerhetskopian.

Viktigt

Om du tar bort en server eller hanterad instans tas även alla dess databaser bort och kan inte återställas. Du kan inte återställa en borttagna server eller hanterad instans.

Databasåterställning har tagits bort med hjälp av Azure Portal

Du återställer borttagna databaser från Azure Portal från servern eller den hanterade instansresursen.

Tips

Det kan ta flera minuter innan en nyligen borttagen databas visas på sidan Borttagna databaser i Azure-portalen eller när borttagna databaser visas programmatiskt.

SQL Database

Om du vill återställa en borttagen databas till borttagningstiden med Azure Portal öppnar du serveröversiktssidan och väljer Borttagna databaser. Välj en borttagna databas som du vill återställa och ange namnet på den nya databasen som ska skapas med data som återställs från säkerhetskopian.

Skärmbild av återställning av borttagna databaser

SQL-hanterad instans

Om du vill återställa en hanterad databas med Azure Portal öppnar du översiktssidan för den hanterade instansen och väljer Borttagna databaser. Välj en borttagna databas som du vill återställa och ange namnet på den nya databasen som ska skapas med data som återställs från säkerhetskopian.

Skärmbild av återställning av borttagna Azure SQL Managed Instance-databas

Databasåterställning har tagits bort med hjälp av PowerShell

Använd följande exempelskript för att återställa en borttagna databas för antingen SQL Database eller SQL hanterad instans med hjälp av PowerShell.

SQL Database

Ett PowerShell-exempelskript som visar hur du återställer en borttagna databas i Azure SQL Database finns i Återställa en databas med Hjälp av PowerShell.

SQL-hanterad instans

Ett PowerShell-exempelskript som visar hur du återställer en borttagna instansdatabas finns i Återställa borttagna instansdatabaser med PowerShell

Tips

Information om hur du programmässigt återställer en borttagna databas finns i Programmässigt utföra återställning med hjälp av automatiska säkerhetskopieringar.

Geo-återställning

Viktigt

Geo-återställning är endast tillgängligt för SQL eller hanterade instanser som konfigurerats med geo-redundant lagring av säkerhetskopior.

Du kan återställa en databas på valfri SQL Database server eller en instansdatabas på valfri hanterad instans i valfri Azure-region från de senaste geo-replikerade säkerhetskopiorna. Geo-återställning använder en geo-replikerad säkerhetskopia som källa. Du kan begära geo-återställning även om databasen eller datacentret inte är tillgänglig på grund av ett avbrott.

Geo-återställning är standardalternativet för återställning när databasen inte är tillgänglig på grund av en incident i värdregionen. Du kan återställa databasen till en server i valfri annan region. Det finns en fördröjning mellan när en säkerhetskopia tas och när den geo-replikeras till en Azure-blob i en annan region. Det innebär att den återställda databasen kan vara upp till en timme efter den ursprungliga databasen. Följande bild visar en databasåterställning från den senaste tillgängliga säkerhetskopian i en annan region.

Bild av geo-återställning

Geo-återställning med hjälp av Azure Portal

Från Azure Portal skapar du en ny enkel eller hanterad instansdatabas och väljer en tillgänglig säkerhetskopia för geo-återställning. Den nyligen skapade databasen innehåller geo-återställda säkerhetskopieringsdata.

SQL Database

Om du vill geo-återställa en enkel databas från Azure Portal i den region och server du väljer, följer du dessa steg:

  1. Från Instrumentpanel väljer du Lägg > till SQL Database. På fliken Grundläggande anger du nödvändig information.

  2. Välj Ytterligare inställningar.

  3. För Använd befintliga data väljer du Säkerhetskopiera.

  4. För Säkerhetskopiering väljer du en säkerhetskopia i listan över tillgängliga geo-återställningssäkerhetskopior.

    Skärmbild av alternativ SQL Database Skapa SQL Database

Slutför processen med att skapa en ny databas från säkerhetskopian. När du skapar en databas Azure SQL Database innehåller den den återställda geo-återställningssäkerhetskopia.

SQL-hanterad instans

Om du vill geo-återställa en hanterad instansdatabas från Azure Portal till en befintlig hanterad instans i valfri region väljer du en hanterad instans där du vill att en databas ska återställas. Följ de här stegen:

  1. Välj Ny databas.

  2. Ange ett önskat databasnamn.

  3. Under Använd befintliga data väljer du Säkerhetskopiera.

  4. Välj en säkerhetskopia i listan över tillgängliga geo-återställningssäkerhetskopior.

    Skärmbild av alternativ för ny databas

Slutför processen med att skapa en ny databas. När du skapar instansdatabasen innehåller den den återställda geo-återställningssäkerhetskopia.

Geo-återställning med hjälp av PowerShell

SQL Database

Ett PowerShell-skript som visar hur du utför geo-återställning för en enkel databas finns i Använda PowerShell för att återställa en enkel databas till en tidigare tidpunkt.

SQL-hanterad instans

Ett PowerShell-skript som visar hur du utför geo-återställning för en hanterad instansdatabas finns i Använda PowerShell för att återställa en hanterad instansdatabas till en annan geo-region.

Överväganden för geo-återställning

Du kan inte utföra en återställning till tidpunkt på en geo-sekundär databas. Du kan bara göra det på en primär databas. Detaljerad information om hur du använder geo-återställning för att återställa efter ett avbrott finns i Återställa från ett avbrott.

Viktigt

Geo-återställning är den mest grundläggande haveriberedskapslösningen som finns i SQL Database och SQL Managed Instance. Den förlitar sig på automatiskt skapade geo-replikerade säkerhetskopior med ett mål för återställningspunkt (RPO) upp till 1 timme och en uppskattad återställningstid på upp till 12 timmar. Det garanterar inte att målregionen har kapacitet att återställa dina databaser efter ett regionalt avbrott, eftersom det är troligt att efterfrågan ökar kraftigt. Om ditt program använder relativt små databaser och inte är kritiskt för verksamheten är geo-återställning en lämplig lösning för haveriberedskap.

För affärskritiska program som kräver stora databaser och som måste garantera affärskontinu kontinuerlighet använder du automatiska redundansgrupper. Det ger ett mycket lägre mål för återställningstid och återställningstid, och kapaciteten garanteras alltid.

Mer information om alternativ för affärskontinuhet finns i Översikt över affärskontinuhet.

Programmatisk återställning med automatiska säkerhetskopieringar

Du kan också använda Azure PowerShell eller REST API för återställning. Följande tabeller beskriver uppsättningen kommandon som är tillgängliga.

PowerShell

Anteckning

I den här artikeln används Azure Az PowerShell-modulen, som är den rekommenderade PowerShell-modulen för att interagera med Azure. För att komma igång med Az PowerShell kan du läsa artikeln om att installera Azure PowerShell. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.

Viktigt

PowerShell Azure Resource Manager modulen stöds fortfarande av SQL Database och SQL Managed Instance, men all framtida utveckling är till för Modulen Az.Sql. Dessa cmdlets finns i AzureRM.Sql. Argumenten för kommandona i Az-modulen och Azure Resource Manager moduler är i stor utsträckning identiska.

Anteckning

Återställningspunkter representerar en period mellan den tidigaste återställningspunkten och den senaste loggsäkerhetskopieringspunkten. Information om den senaste återställningspunkten är för närvarande inte tillgänglig Azure PowerShell.

SQL Database

Information om hur du återställer en fristående databas eller en pooldatabas finns i Restore-AzSqlDatabase.

Cmdlet Beskrivning
Get-AzSqlDatabase Hämtar en eller flera databaser.
Get-AzSqlDeletedDatabaseBackup Hämtar en borttagen databas som du kan återställa.
Get-AzSqlDatabaseGeoBackup Hämtar en geo-redundant säkerhetskopia av en databas.
Restore-AzSqlDatabase Återställer en databas.

Tips

Ett PowerShell-exempelskript som visar hur du utför en återställning till en tidpunkt av en databas finns i Återställa en databas med hjälp av PowerShell.

SQL-hanterad instans

Information om hur du återställer en hanterad instansdatabas finns i Restore-AzSqlInstanceDatabase.

Cmdlet Beskrivning
Get-AzSqlInstance Hämtar en eller flera hanterade instanser.
Get-AzSqlInstanceDatabase Hämtar en instansdatabas.
Restore-AzSqlInstanceDatabase Återställer en instansdatabas.

REST API

Så här återställer du en databas med hjälp REST API:

API Beskrivning
REST (createMode=Recovery) Återställer en databas.
Hämta status för skapa eller uppdatera databas Returnerar statusen under en återställningsåtgärd.

Azure CLI

SQL Database

Information om hur du återställer en databas med hjälp av Azure CLI finns i az sql db restore.

SQL-hanterad instans

Information om hur du återställer en hanterad instansdatabas med hjälp av Azure CLI finns i az sql midb restore.

Sammanfattning

Automatiska säkerhetskopieringar skyddar dina databaser mot användar- och programfel, oavsiktlig databasborttagning och långvariga avbrott. Den här inbyggda funktionen är tillgänglig för alla tjänstnivåer och beräkningsstorlekar.

Nästa steg