Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Återställer SQL-databassäkerhetskopior som görs med hjälp av kommandot BACKUP .
Välj en produkt
På följande rad väljer du det produktnamn som du är intresserad av och endast den produktinformationen visas.
Mer information om syntaxkonventionerna finns i Transact-SQL syntaxkonventioner.
* SQL Server *
SQL Server
Med det här kommandot kan du utföra följande återställningsscenarier:
- Återställa en hel databas från en fullständig databassäkerhetskopia (en fullständig återställning).
- Återställa en del av en databas (en partiell återställning).
- Återställa specifika filer eller filgrupper till en databas (en filåterställning).
- Återställa specifika sidor till en databas (en sidåterställning).
- Återställa en transaktionslogg till en databas (en återställning av transaktionsloggen).
- Återställ en databas till den tidpunkt som fångas av en databasögonblicksbild.
Andra resurser
- Mer information om SQL Server-återställningsscenarier finns i Översikt över återställning och återställning.
- När du återställer en databas från en annan instans bör du överväga informationen från Hantera metadata när du gör en databas tillgänglig på en annan serverinstans (SQL Server).
- Mer information om hur du återställer från Microsoft Azure Blob Storage finns i SÄKERHETSKOPIERing och återställning av SQL Server med Microsoft Azure Blob Storage.
- Säkerhetskopiering och återställning till S3-kompatibel objektlagring introducerades i SQL Server 2022 (16.x). Mer information om hur du återställer från S3-kompatibel objektlagring finns i SÄKERHETSKOPIERing och återställning av SQL Server med S3-kompatibel objektlagring. Granska även alternativet för SÄKERHETSKOPIERing av SQL Server till URL för S3-kompatibel objektlagring.
Syntax
- Mer information om beskrivningar av argumenten finns i RESTORE-argument.
--To Restore an Entire Database from a Full database backup (a Complete Restore):
RESTORE DATABASE { database_name | @database_name_var }
 [ FROM <backup_device> [ ,...n ] ]
 [ WITH
   {
    [ RECOVERY | NORECOVERY | STANDBY =
        {standby_file_name | @standby_file_name_var }
       ]
   | ,  <general_WITH_options> [ ,...n ]
   | , <replication_WITH_option>
   | , <change_data_capture_WITH_option>
   | , <FILESTREAM_WITH_option>
   | , <service_broker_WITH options>
   | , <point_in_time_WITH_options-RESTORE_DATABASE>
   } [ ,...n ]
 ]
[;]
--To perform the first step of the initial restore sequence of a piecemeal restore:
RESTORE DATABASE { database_name | @database_name_var }
   <files_or_filegroups> [ ,...n ]
 [ FROM <backup_device> [ ,...n ] ]
   WITH
      PARTIAL, NORECOVERY
      [  , <general_WITH_options> [ ,...n ]
       | , <point_in_time_WITH_options-RESTORE_DATABASE>
      ] [ ,...n ]
[;]
--To Restore Specific Files or Filegroups:
RESTORE DATABASE { database_name | @database_name_var }
   <file_or_filegroup> [ ,...n ]
 [ FROM <backup_device> [ ,...n ] ]
   WITH
   {
      [ RECOVERY | NORECOVERY ]
      [ , <general_WITH_options> [ ,...n ] ]
   } [ ,...n ]
[;]
--To Restore Specific Pages:
RESTORE DATABASE { database_name | @database_name_var }
   PAGE = 'file:page [ ,...n ]'
 [ , <file_or_filegroups> ] [ ,...n ]
 [ FROM <backup_device> [ ,...n ] ]
   WITH
       NORECOVERY
      [ , <general_WITH_options> [ ,...n ] ]
[;]
--To Restore a Transaction Log:
RESTORE LOG { database_name | @database_name_var }
 [ <file_or_filegroup_or_pages> [ ,...n ] ]
 [ FROM <backup_device> [ ,...n ] ]
 [ WITH
   {
     [ RECOVERY | NORECOVERY | STANDBY =
        {standby_file_name | @standby_file_name_var }
       ]
    | , <general_WITH_options> [ ,...n ]
    | , <replication_WITH_option>
    | , <point_in_time_WITH_options-RESTORE_LOG>
   } [ ,...n ]
 ]
[;]
--To Revert a Database to a Database Snapshot:
RESTORE DATABASE { database_name | @database_name_var }
FROM DATABASE_SNAPSHOT = database_snapshot_name
<backup_device>::=
{
   { logical_backup_device_name |
      @logical_backup_device_name_var }
 | { DISK
     | TAPE
     | URL
   } = { 'physical_backup_device_name' |
      @physical_backup_device_name_var }
}
<files_or_filegroups>::=
{
   FILE = { logical_file_name_in_backup | @logical_file_name_in_backup_var }
 | FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }
 | READ_WRITE_FILEGROUPS
}
<general_WITH_options> [ ,...n ]::=
--Restore Operation Options
   MOVE 'logical_file_name_in_backup' TO 'operating_system_file_name'
          [ ,...n ]
 | REPLACE
 | RESTART
 | RESTRICTED_USER | CREDENTIAL
--Backup Set Options
 | FILE = { backup_set_file_number | @backup_set_file_number }
 | PASSWORD = { password | @password_variable }
 | [ METADATA_ONLY | SNAPSHOT ] [ DBNAME = { database_name | @database_name_variable } ]
--Media Set Options
 | MEDIANAME = { media_name | @media_name_variable }
 | MEDIAPASSWORD = { mediapassword | @mediapassword_variable }
 | BLOCKSIZE = { blocksize | @blocksize_variable }
--Data Transfer Options
 | BUFFERCOUNT = { buffercount | @buffercount_variable }
 | MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }
--Error Management Options
 | { CHECKSUM | NO_CHECKSUM }
 | { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }
--Monitoring Options
 | STATS [ = percentage ]
--Tape Options.
 | { REWIND | NOREWIND }
 | { UNLOAD | NOUNLOAD }
<replication_WITH_option>::=
 | KEEP_REPLICATION
<change_data_capture_WITH_option>::=
 | KEEP_CDC
<FILESTREAM_WITH_option>::=
 | FILESTREAM ( DIRECTORY_NAME = directory_name )
<service_broker_WITH_options>::=
 | ENABLE_BROKER
 | ERROR_BROKER_CONVERSATIONS
 | NEW_BROKER
<point_in_time_WITH_options-RESTORE_DATABASE>::=
 | {
   STOPAT = { 'datetime'| @datetime_var }
 | STOPATMARK = 'lsn:lsn_number'
                 [ AFTER 'datetime']
 | STOPBEFOREMARK = 'lsn:lsn_number'
                 [ AFTER 'datetime']
   }
<point_in_time_WITH_options-RESTORE_LOG>::=
 | {
   STOPAT = { 'datetime'| @datetime_var }
 | STOPATMARK = { 'mark_name' | 'lsn:lsn_number' }
                 [ AFTER 'datetime']
 | STOPBEFOREMARK = { 'mark_name' | 'lsn:lsn_number' }
                 [ AFTER 'datetime']
   }
Arguments
Beskrivningar av argumenten finns i RESTORE-argument.
Om återställningsscenarier
SQL Server stöder en mängd olika återställningsscenarier:
- Slutför databasåterställning - Återställer hela databasen, från och med en fullständig säkerhetskopia av databasen, vilket kan följas av återställning av en differentiell databassäkerhetskopia (och loggsäkerhetskopior). Mer information finns i Slutför databasåterställningar – Enkel återställningsmodell eller Slutför databasåterställningar – Fullständig återställningsmodell. 
- Filåterställning - Återställer en fil eller filgrupp i en databas med flera filgrupper. Under den enkla återställningsmodellen måste filen tillhöra en skrivskyddad filgrupp. Efter en fullständig filåterställning kan en differentiell filsäkerhetskopia återställas. Mer information finns i Filåterställningar – Fullständig återställningsmodell och filåterställningar – Enkel återställningsmodell. 
- Sidåterställning - Återställer enskilda sidor. Sidåterställning är endast tillgängligt under de fullständiga och massloggade återställningsmodellerna. Mer information finns i Återställa sidor – SQL Server. 
- Bitmeal återställning - Återställer databasen i faser och börjar med den primära filgruppen och en eller flera sekundära filgrupper. En bitåterställning börjar med en ÅTERSTÄLLNINGSDATABAS med alternativet PARTIELL och anger en eller flera sekundära filgrupper som ska återställas. Mer information finns i Bitmeal-återställningar – SQL Server. 
- Endast återställning - Återställer data som redan är konsekventa med databasen och som bara behöver göras tillgängliga. Mer information finns i Återställa en databas utan att återställa data. 
- Återställning av transaktionslogg. - Under den fullständiga eller massloggade återställningsmodellen krävs återställning av loggsäkerhetskopior för att nå önskad återställningspunkt. Mer information om hur du återställer loggsäkerhetskopior finns i Tillämpa säkerhetskopior av transaktionsloggar – SQL Server. 
- Förbereda en tillgänglighetsdatabas för en AlwaysOn-tillgänglighetsgrupp - Mer information finns i Förbereda en sekundär databas manuellt för en tillgänglighetsgrupp – SQL Server. 
- Förbereda en speglingsdatabas för databasspegling - Mer information finns i Förbereda en speglingsdatabas för spegling – SQL Server. 
- Onlineåterställning - Anmärkning - Onlineåterställning tillåts endast i Enterprise-versionen av SQL Server. 
Om onlineåterställningen stöds, om databasen är online, är filåterställningar och sidåterställningar automatiskt onlineåterställningar och även återställningar av sekundär filgrupp efter den inledande fasen av en bitåterställning.
Anmärkning
Onlineåterställningar kan omfatta uppskjutna transaktioner.
Mer information finns i Onlineåterställning.
Ytterligare överväganden om ÅTERSTÄLLNINGsalternativ
Nyckelord för återställning som upphört
Följande nyckelord upphörde i SQL Server 2008 (10.0.x):
| Nyckelordet Upphört | Ersätts av... | Exempel på ersättningsnyckelord | 
|---|---|---|
| LAST | RESTORE | RESTORE DATABASE | 
| TRANSAKTION | LOG | RESTORE LOG | 
| DBO_ONLY | RESTRICTED_USER | RESTORE DATABASE ... WITH RESTRICTED_USER | 
ÅTERSTÄLLNINGSLOGG
ÅTERSTÄLLNINGSLOGGen kan innehålla en fillista som gör det möjligt att skapa filer under rollforward. Detta används när loggsäkerhetskopian innehåller loggposter som skrevs när en fil lades till i databasen.
Anmärkning
För en databas som använder den fullständiga eller massloggade återställningsmodellen måste du i de flesta fall säkerhetskopiera loggens svans innan du återställer databasen. Om du återställer en databas utan att först säkerhetskopiera loggen resulterar det i ett fel, såvida inte RESTORE DATABASE-instruktionen innehåller antingen WITH REPLACE- eller WITH STOPAT-satsen, som måste ange en tid eller transaktion som inträffade efter datasäkerhetskopian. Mer information om säkerhetskopior av slutloggar finns iTail-Log Säkerhetskopior.
Jämförelse av RECOVERY och NORECOVERY
Återställning styrs av RESTORE-instruktionen via [RECOVERY | NORECOVERY] alternativ:
- NORECOVERY anger att återställning inte sker. Detta gör att rollforward kan fortsätta med nästa instruktion i sekvensen. - I det här fallet kan återställningssekvensen återställa andra säkerhetskopior och rulla dem framåt. 
- ÅTERSTÄLLNING (standard) anger att återställning ska utföras när rollforward har slutförts för den aktuella säkerhetskopieringen. Inga ytterligare säkerhetskopior kan återställas. Välj det här alternativet när du har återställt alla nödvändiga säkerhetskopior. - Återställning av databasen kräver att hela uppsättningen data som återställs ( rollforward-uppsättningen) är konsekvent med databasen. Om rollforward-uppsättningen inte har rullats framåt tillräckligt långt för att vara konsekvent med databasen och RECOVERY har angetts, utfärdar databasmotorn ett fel. Mer information om återställningsprocessen finns i Översikt över återställning och återställning (SQL Server). 
Stöd för kompatibilitet
Säkerhetskopior av masteroch msdbmodel som skapades med hjälp av en tidigare version av SQL Server kan inte återställas av SQL Server.
Anmärkning
Ingen SQL Server-säkerhetskopiering kan återställas till en tidigare version av SQL Server än den version där säkerhetskopieringen skapades.
Varje version av SQL Server använder en annan standardsökväg än tidigare versioner. För att återställa en databas som skapades på standardplatsen för tidigare versionssäkerhetskopior måste du därför använda alternativet FLYTTA. Information om den nya standardsökvägen finns i Filplatser för Standard och Namngivna instanser av SQL Server.
När du har återställt en tidigare versionsdatabas till SQL Server uppgraderas databasen automatiskt. Vanligtvis blir databasen tillgänglig omedelbart. Men om en SQL Server 2005-databas (9.x) har fulltextindex importerar, återställer eller återskapar uppgraderingsprocessen dem, beroende på inställningen för egenskapen upgrade_option server. Om uppgraderingsalternativet är inställt på att importera (upgrade_option = 2) eller återskapa (upgrade_option = 0) är fulltextindexen inte tillgängliga under uppgraderingen. Beroende på hur mycket data som indexeras kan det ta flera timmar att importera, och återskapande kan ta upp till tio gånger längre tid. Observera också att när uppgraderingsalternativet är inställt på import återskapas de associerade fulltextindexen om en fulltextkatalog inte är tillgänglig. Om du vill ändra inställningen för egenskapen upgrade_option server använder du sp_fulltext_service.
När en databas först ansluts eller återställs till en ny instans av SQL Server lagras ännu inte en kopia av databashuvudnyckeln (krypterad av tjänstens huvudnyckel) på servern. Du måste använda OPEN MASTER KEY-instruktionen för att dekryptera databashuvudnyckeln (DMK). När DMK har dekrypterats kan du aktivera automatisk dekryptering i framtiden genom att använda REGENERATE-instruktionen ALTER MASTER KEY för att etablera servern med en kopia av DMK,krypterad med tjänstens huvudnyckel (SMK). När en databas har uppgraderats från en tidigare version bör DMK återskapas för att använda den nyare AES-algoritmen. Mer information om hur du återskapar DMK finns i ÄNDRA HUVUDNYCKEL. Den tid det tar att återskapa DMK-nyckeln för att uppgradera till AES beror på antalet objekt som skyddas av DMK. Det är bara nödvändigt att återskapa DMK-nyckeln för att uppgradera till AES en gång och har ingen inverkan på framtida regenereringar som en del av en nyckelrotationsstrategi.
Anmärkningar
Under en offlineåterställning, om den angivna databasen används, tvingar RESTORE användarna bort efter en kort fördröjning. För onlineåterställning av en icke-primär filgrupp kan databasen fortsätta att användas, förutom när filgruppen som återställs tas offline. Alla data i den angivna databasen ersätts av återställde data.
Plattformsoberoende återställningsåtgärder, även mellan olika processortyper, kan utföras så länge sortering av databasen stöds av operativsystemet.
ÅTERSTÄLLNING kan startas om efter ett fel. Dessutom kan du instruera RESTORE att fortsätta trots fel och återställa så mycket data som möjligt (se alternativet CONTINUE_AFTER_ERROR ).
ÅTERSTÄLLNING tillåts inte i en explicit eller implicit transaktion.
Återställning av en skadad master databas utförs med hjälp av en särskild procedur. Mer information finns i Säkerhetskopiera och återställa systemdatabaser.
Om du återställer en databas rensas plancachen för databasen som återställs. Om du rensar plancachen blir det en omkompilering av alla efterföljande körningsplaner och kan orsaka en plötslig, tillfällig minskning av frågeprestanda.
Återställ en tillgänglighetsdatabas genom att först återställa databasen till instansen av SQL Server och sedan lägga till databasen i tillgänglighetsgruppen.
Integrerad acceleration och avlastning för säkerhetskopieringskomprimering och dekomprimering
SQL Server 2022 (16.x) introducerar ALGORITHM, som identifierar en komprimeringsalgoritm för åtgärden. Mer information finns i Komprimering av säkerhetskopiering.
Mer information finns i Återställningsåtgärder
Återställa från URL
URL är det format som används för att ange platsen och filnamnet för Microsoft Azure Blob Storage eller S3-kompatibel objektlagring. Även om Azure Blob Storage är en tjänst liknar implementeringen disk och band för att möjliggöra en konsekvent och sömlös återställningsupplevelse för alla enheter.
- Mer information om hur du återställer från Microsoft Azure Blob Storage finns i SÄKERHETSKOPIERing och återställning av SQL Server med Microsoft Azure Blob Storage. 
- Säkerhetskopiering och återställning till S3-kompatibel objektlagring introducerades i SQL Server 2022 (16.x). Mer information om hur du återställer från S3-kompatibel objektlagring finns i SÄKERHETSKOPIERing och återställning av SQL Server med S3-kompatibel objektlagring. Granska även alternativet för SÄKERHETSKOPIERing av SQL Server till URL för S3-kompatibel objektlagring. 
Samverkan
Databasinställningar och återställning
Under en återställning återställs de flesta databasalternativ som kan anges med ALTER DATABASE till de värden som gäller vid tidpunkten för säkerhetskopieringens slut.
Med hjälp av alternativet WITH RESTRICTED_USER åsidosätter dock det här beteendet för inställningen för användaråtkomstalternativet. Den här inställningen anges alltid efter en RESTORE-instruktion, som innehåller alternativet WITH RESTRICTED_USER.
Återställa en krypterad databas
Om du vill återställa en databas som är krypterad måste du ha åtkomst till certifikatet eller den asymmetriska nyckel som användes för att kryptera databasen. Utan certifikatet eller den asymmetriska nyckeln kan databasen inte återställas. Därför måste certifikatet som används för att kryptera databaskrypteringsnyckeln behållas så länge säkerhetskopieringen behövs. Mer information finns i SQL Server-certifikat och asymmetriska nycklar.
Återställa en databas som är aktiverad för vardecimal lagring
Säkerhetskopiering och återställning fungerar korrekt med vardecimalt lagringsformat . Mer information om vardecimalt lagringsformat finns i sp_db_vardecimal_storage_format.
Återställa fulltextdata
Fulltextdata återställs tillsammans med andra databasdata under en fullständig återställning. Med den vanliga RESTORE DATABASE database_name FROM backup_device syntaxen återställs fulltextfilerna som en del av återställningen av databasfilen.
RESTORE-instruktionen kan också användas för att utföra återställningar till alternativa platser, differentiella återställningar, fil- och filgruppsåterställningar samt differentiella fil- och filgruppsåterställningar av fulltextdata. Dessutom kan RESTORE endast återställa fulltextfiler, samt med databasdata.
Anmärkning
Fulltextkataloger som importerats från SQL Server 2005 (9.x) behandlas fortfarande som databasfiler. För dessa är SQL Server 2005-proceduren (9.x) för säkerhetskopiering av fulltextkataloger fortfarande tillämplig, förutom att pausning och återupptagning under säkerhetskopieringen inte längre behövs. Mer information finns i Säkerhetskopiera och återställa Full-Text kataloger.
Återställa till SQL Server 2022 och funktionen för automatisk borttagning
När du återställer en databas till SQL Server 2022 (16.x) från en tidigare version rekommenderar vi att du kör sp_updatestats på databasen och anger rätt metadata för funktionen för automatisk borttagning av statistik. Mer information finns i alternativet automatisk borttagning av statistik.
SQL Server-stordatakluster
Vissa åtgärder, inklusive att konfigurera inställningar på servernivå eller manuellt lägga till en databas i en tillgänglighetsgrupp, kräver en anslutning till SQL Server-instansen. Åtgärder som sp_configure, RESTORE DATABASEeller alla DDL-kommandon i en databas som tillhör en tillgänglighetsgrupp kräver en anslutning till SQL Server-instansen. Som standard innehåller inte ett stordatakluster någon slutpunkt som aktiverar en anslutning till instansen. Du måste exponera den här slutpunkten manuellt.
Anvisningar finns i Ansluta till databaser på den primära repliken.
Metainformation
SQL Server innehåller tabeller för säkerhetskopiering och återställningshistorik som spårar säkerhetskopierings- och återställningsaktiviteten för varje serverinstans. När en återställning utförs ändras även tabellerna för säkerhetskopieringshistorik. Information om dessa tabeller finns i Säkerhetskopieringshistorik och rubrikinformation.
Ersätt alternativpåverkan
REPLACE bör användas sällan och endast efter noggrant övervägande. Återställning förhindrar normalt att en databas skrivs över av misstag med en annan databas. Om databasen som anges i en RESTORE-instruktion redan finns på den aktuella servern och den angivna databasfamiljens GUID skiljer sig från databasfamiljens GUID som registrerats i säkerhetskopieringsuppsättningen återställs inte databasen. Detta är ett viktigt skydd.
Alternativet ERSÄTT åsidosätter flera viktiga säkerhetskontroller som återställningen normalt utför. De åsidosatta kontrollerna är följande:
- Återställa över en befintlig databas med en säkerhetskopia av en annan databas. - Med alternativet ERSÄTT kan du skriva över en befintlig databas med den databas som finns i säkerhetskopieringsuppsättningen, även om det angivna databasnamnet skiljer sig från databasnamnet som registrerats i säkerhetskopian. Detta kan leda till att en databas av misstag skrivs över av en annan databas. 
- Återställa över en databas med hjälp av den fullständiga eller massloggade återställningsmodellen där en säkerhetskopia av slutloggen inte har tagits och - STOPATalternativet inte används.- Med alternativet ERSÄTT kan du förlora incheckat arbete eftersom loggen som skrivits senast inte har säkerhetskopierats. 
- Skriva över befintliga filer. - Ett misstag kan till exempel tillåta att filer av fel typ skrivs över, till exempel .xls filer eller som används av en annan databas som inte är online. Godtycklig dataförlust är möjlig om befintliga filer skrivs över, även om den återställda databasen är klar. 
Gör om en återställning
Det går inte att ångra effekterna av en återställning. Du kan dock negera effekterna av datakopian och rollforward genom att börja om per fil. Börja om genom att återställa önskad fil och utföra rollforwarden igen. Om du till exempel av misstag har återställt för många loggsäkerhetskopior och överskridit den avsedda stopppunkten måste du starta om sekvensen.
En återställningssekvens kan avbrytas och startas om genom att återställa hela innehållet i de berörda filerna.
Återställa en databas till en ögonblicksbild av databasen
En återställningsdatabasåtgärd (som anges med alternativet DATABASE_SNAPSHOT) tar en fullständig källdatabas tillbaka i tiden genom att återställa den till tidpunkten för en ögonblicksbild av databasen, dvs. skriva över källdatabasen med data från den tidpunkt som underhålls i den angivna ögonblicksbilden av databasen. Endast den ögonblicksbild som du återställer till kan för närvarande finnas. Återställningsåtgärden återskapar sedan loggen (därför kan du inte senare återställa en återställd databas till felpunkten för användaren).
Dataförlusten är begränsad till uppdateringar av databasen sedan ögonblicksbilden skapades. Metadata för en återställd databas är samma som metadata när ögonblicksbilden skapas. Om du återgår till en ögonblicksbild försvinner dock alla fulltextkataloger.
Återställning från en databasögonblicksbild är inte avsedd för medieåterställning. Till skillnad från en vanlig säkerhetskopieringsuppsättning är databasögonblicksbilden en ofullständig kopia av databasfilerna. Om antingen databasen eller databasögonblicksbilden är skadad är det troligt att det är omöjligt att återställa från en ögonblicksbild. Det är dessutom osannolikt att det kommer att åtgärda problemet även om det är möjligt att återställa i händelse av skada.
Begränsningar för återställning
Återställning stöds inte under följande villkor:
- Källdatabasen innehåller skrivskyddade eller komprimerade filgrupper.
- Alla filer är offline som var online när ögonblicksbilden skapades.
- Det finns för närvarande mer än en ögonblicksbild av databasen.
Mer information finns i Återställa en databas till en ögonblicksbild av databasen.
Security
En säkerhetskopieringsåtgärd kan också ange lösenord för en medieuppsättning, en säkerhetskopieringsuppsättning eller båda. När ett lösenord har definierats på en medieuppsättning eller en säkerhetskopia måste du ange rätt lösenord eller lösenord i RESTORE-instruktionen. Dessa lösenord förhindrar obehöriga återställningsåtgärder och obehöriga tillägg av säkerhetskopieringsuppsättningar till media med hjälp av SQL Server-verktyg. Lösenordsskyddade medier kan dock skrivas över av alternativet FORMAT för BACKUP-instruktionen.
Viktigt!
Skyddet som tillhandahålls av det här lösenordet är svagt. Den är avsedd att förhindra en felaktig återställning med hjälp av SQL Server-verktyg av auktoriserade eller obehöriga användare. Det förhindrar inte läsning av säkerhetskopierade data på annat sätt eller ersättning av lösenordet. Den här funktionen tas bort i en framtida version av SQL Server. Undvik att använda den här funktionen i nytt utvecklingsarbete och planera att ändra program som för närvarande använder den här funktionen. Det bästa sättet att skydda säkerhetskopior är att lagra säkerhetskopieringsband på en säker plats eller säkerhetskopiera till diskfiler som skyddas av lämpliga åtkomstkontrollistor (ACL). ACL:erna ska anges i katalogroten under vilken säkerhetskopior skapas.
- Information som är specifik för säkerhetskopiering och återställning av SQL Server med Microsoft Azure Blob Storage finns i SÄKERHETSKOPIERing och återställning av SQL Server med Microsoft Azure Blob Storage. 
- Säkerhetskopiering och återställning till S3-kompatibel objektlagring introducerades i SQL Server 2022 (16.x). Mer information om hur du återställer från S3-kompatibel objektlagring finns i SÄKERHETSKOPIERing och återställning av SQL Server med S3-kompatibel objektlagring. Granska även alternativet för SÄKERHETSKOPIERing av SQL Server till URL för S3-kompatibel objektlagring. 
Permissions
Om databasen som återställs inte finns måste användaren ha CREATE DATABASE behörighet att kunna köra RESTORE. Om databasen finns finns återställningsbehörigheter som standard till medlemmar i sysadmin och dbcreator fasta serverroller och ägaren (dbo) av databasen (för FROM DATABASE_SNAPSHOT alternativet finns databasen alltid).
ÅTERSTÄLLNINGsbehörigheter ges till roller där medlemskapsinformation alltid är lättillgänglig för servern. Eftersom fast databasrollmedlemskap endast kan kontrolleras när databasen är tillgänglig och oskadad, vilket inte alltid är fallet när RESTORE körs, har medlemmar i den fasta databasrollen db_owner inte ÅTERSTÄLLNINGsbehörigheter.
Examples
Alla exempel förutsätter att en fullständig databassäkerhetskopia har utförts.
Exempel på ÅTERSTÄLLNING innehåller följande:
- A. Återställa en fullständig databas
- B. Återställa fullständiga och differentiella databassäkerhetskopieringar
- C. Återställa en databas med omstartssyntax
- D. Återställa en databas och flytta filer
- E. Kopiera en databas med säkerhetskopiering och ÅTERSTÄLLNING
- F. Återställa till en tidpunkt med STOPAT
- G. Återställa transaktionsloggen till ett märke
- H. Återställa med bandsyntax
- I. Återställa med fil- och FILEGROUP-syntax
- J. Återställa från en databasögonblicksbild
- K. Återställa från Microsoft Azure Blob Storage
- L. Återställa från en säkerhetskopiering av ögonblicksbilder
Anmärkning
Ytterligare exempel finns i avsnittet om att återställa instruktioner som visas i Översikt över återställning och återställning.
A. Återställa en fullständig databas
I följande exempel återställs en fullständig databassäkerhetskopia från den AdventureWorksBackups logiska säkerhetskopieringsenheten. Ett exempel på hur du skapar den här enheten finns i Säkerhetskopieringsenheter.
RESTORE DATABASE AdventureWorks2022
  FROM AdventureWorks2022Backups;
Anmärkning
För en databas som använder den fullständiga eller massloggade återställningsmodellen kräver SQL Server i de flesta fall att du säkerhetskopierar loggens svans innan du återställer databasen. Mer information finns iTail-Log Säkerhetskopior.
B. Återställa fullständiga och differentiella databassäkerhetskopieringar
I följande exempel återställs en fullständig databassäkerhetskopia följt av en differentiell säkerhetskopia från Z:\SQLServerBackups\AdventureWorks2022.bak säkerhetskopieringsenheten, som innehåller båda säkerhetskopiorna. Den fullständiga databassäkerhetskopian som ska återställas är den sjätte säkerhetskopian på enheten (FILE = 6), och den differentiella databassäkerhetskopian är den nionde säkerhetskopian på enheten (FILE = 9). Så snart differentiell säkerhetskopiering har återställts återställs databasen.
RESTORE DATABASE AdventureWorks2022
    FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak'
    WITH FILE = 6,
      NORECOVERY;
RESTORE DATABASE AdventureWorks2022
    FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak'
    WITH FILE = 9,
      RECOVERY;
C. Återställa en databas med omstartssyntax
I följande exempel används RESTART alternativet för att starta om en RESTORE åtgärd som avbryts av ett serverfel.
-- This database RESTORE halted prematurely due to power failure.
RESTORE DATABASE AdventureWorks2022
    FROM AdventureWorksBackups;
-- Here is the RESTORE RESTART operation.
RESTORE DATABASE AdventureWorks2022
    FROM AdventureWorksBackups WITH RESTART;
D. Återställa en databas och flytta filer
I följande exempel återställs en fullständig databas och transaktionslogg och den återställde databasen flyttas till C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data katalogen.
RESTORE DATABASE AdventureWorks2022
    FROM AdventureWorksBackups
    WITH NORECOVERY,
      MOVE 'AdventureWorks2022_Data' TO
'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf',
      MOVE 'AdventureWorks2022_Log'
TO 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf';
RESTORE LOG AdventureWorks2022
    FROM AdventureWorksBackups
    WITH RECOVERY;
E. Kopiera en databas med säkerhetskopiering och ÅTERSTÄLLNING
I följande exempel används både BACKUP - och RESTORE -instruktioner för att göra en kopia av AdventureWorks2022 databasen. Instruktionen MOVE gör att data och loggfilen återställs till de angivna platserna. -instruktionen RESTORE FILELISTONLY används för att fastställa antalet och namnen på filerna i databasen som återställs. Den nya kopian av databasen heter TestDB. Mer information finns i RESTORE FILELISTONLY.
BACKUP DATABASE AdventureWorks2022
    TO AdventureWorksBackups ;
RESTORE FILELISTONLY
    FROM AdventureWorksBackups ;
RESTORE DATABASE TestDB
    FROM AdventureWorksBackups
    WITH MOVE 'AdventureWorks2022_Data' TO 'C:\MySQLServer\testdb.mdf',
    MOVE 'AdventureWorks2022_Log' TO 'C:\MySQLServer\testdb.ldf';
GO
F. Återställ till en specifik tidpunkt med kommandot STOPAT
I följande exempel återställs en databas till dess tillstånd från 12:00 AM och med den April 15, 2020 och visar en återställningsåtgärd som omfattar flera loggsäkerhetskopior. På säkerhetskopieringsenheten AdventureWorksBackupsär den fullständiga databassäkerhetskopian som ska återställas den tredje säkerhetskopian på enheten (FILE = 3), den första loggsäkerhetskopian är den fjärde säkerhetskopieringsuppsättningen (FILE = 4) och den andra loggsäkerhetskopian är den femte säkerhetskopieringsuppsättningen (FILE = 5).
RESTORE DATABASE AdventureWorks2022
    FROM AdventureWorksBackups
    WITH FILE = 3, NORECOVERY;
RESTORE LOG AdventureWorks2022
    FROM AdventureWorksBackups
    WITH FILE = 4, NORECOVERY, STOPAT = 'Apr 15, 2020 12:00 AM';
RESTORE LOG AdventureWorks2022
    FROM AdventureWorksBackups
    WITH FILE = 5, NORECOVERY, STOPAT = 'Apr 15, 2020 12:00 AM';
RESTORE DATABASE AdventureWorks2022 WITH RECOVERY;
G. Återställa transaktionsloggen till ett märke
I följande exempel återställs transaktionsloggen till märket i den markerade transaktionen med namnet ListPriceUpdate.
USE AdventureWorks2022;
GO
BEGIN TRANSACTION ListPriceUpdate
    WITH MARK 'UPDATE Product list prices';
GO
UPDATE Production.Product
    SET ListPrice = ListPrice * 1.10
    WHERE ProductNumber LIKE 'BK-%';
GO
COMMIT TRANSACTION ListPriceUpdate;
GO
-- Time passes. Regular database
-- and log backups are taken.
-- An error occurs in the database.
USE master;
GO
RESTORE DATABASE AdventureWorks2022
FROM AdventureWorksBackups
WITH FILE = 3, NORECOVERY;
GO
RESTORE LOG AdventureWorks2022
  FROM AdventureWorksBackups
    WITH FILE = 4,
    RECOVERY,
    STOPATMARK = 'UPDATE Product list prices';
H. Återställa med bandsyntax
I följande exempel återställs en fullständig säkerhetskopia av databasen från en TAPE säkerhetskopieringsenhet.
RESTORE DATABASE AdventureWorks2022
    FROM TAPE = '\\.\tape0';
I. Återställa med fil- och FILGRUPPssyntax
I följande exempel återställs en databas med namnet MyDatabase som har två filer, en sekundär filgrupp och en transaktionslogg. Databasen använder den fullständiga återställningsmodellen.
Databassäkerhetskopian är den nionde säkerhetskopian i medieuppsättningen på en logisk säkerhetskopieringsenhet med namnet MyDatabaseBackups. Därefter återställs tre loggsäkerhetskopior, som finns i de kommande tre säkerhetskopieringsuppsättningarna (10, 11och 12) på MyDatabaseBackups enheten med hjälp WITH NORECOVERYav . När den senaste loggsäkerhetskopian har återställts med NORECOVERYåterställs databasen.
Anmärkning
Återställningen utförs som ett separat steg för att minska risken för att du återställs för tidigt innan alla loggsäkerhetskopior har återställts. Mer information om återställningsprocessen finns i Översikt över återställning och återställning (SQL Server).
              RESTORE DATABASEObservera att det finns två typer av FILE alternativ i . Alternativen FILE före namnet på säkerhetskopieringsenheten anger de logiska filnamnen för de databasfiler som ska återställas från säkerhetskopieringsuppsättningen, FILE = 'MyDatabase_data_1'till exempel . Den här säkerhetskopieringsuppsättningen är inte den första databassäkerhetskopian i medieuppsättningen. Därför anges dess position i medieuppsättningen med hjälp FILE av alternativet i WITH -satsen , FILE = 9.
RESTORE DATABASE MyDatabase
    FILE = 'MyDatabase_data_1',
    FILE = 'MyDatabase_data_2',
    FILEGROUP = 'new_customers'
    FROM MyDatabaseBackups
    WITH
      FILE = 9,
      NORECOVERY;
GO
-- Restore the log backups
RESTORE LOG MyDatabase
    FROM MyDatabaseBackups
    WITH FILE = 10,
      NORECOVERY;
GO
RESTORE LOG MyDatabase
    FROM MyDatabaseBackups
    WITH FILE = 11,
      NORECOVERY;
GO
RESTORE LOG MyDatabase
    FROM MyDatabaseBackups
    WITH FILE = 12,
      NORECOVERY;
GO
--Recover the database
RESTORE DATABASE MyDatabase WITH RECOVERY;
GO
J. Återställ från en databasögonblicksbild
I följande exempel återställs en databas till en ögonblicksbild av databasen. Exemplet förutsätter att det för närvarande bara finns en ögonblicksbild i databasen. Ett exempel på hur du skapar den här databasögonblicksbilden finns i Skapa en ögonblicksbild av databasen.
Anmärkning
Om du återgår till en ögonblicksbild försvinner alla fulltextkataloger.
USE master;
RESTORE DATABASE AdventureWorks2022 FROM DATABASE_SNAPSHOT = 'AdventureWorks_dbss1800';
GO
Mer information finns i Återställa en databas till en ögonblicksbild av databasen.
K. Återställa från Microsoft Azure Blob Storage
De tre exemplen nedan omfattar användning av Microsoft Azure-lagringstjänsten. Lagringskontonamnet är mystorageaccount. Containern för datafiler kallas myfirstcontainer. Containern för säkerhetskopieringsfiler kallas mysecondcontainer. En lagrad åtkomstprincip har skapats med läs-, skriv-, borttagnings- och listrättigheter för varje container. SQL Server-autentiseringsuppgifter skapades med signaturer för delad åtkomst som är associerade med principer för lagrad åtkomst. Information som är specifik för säkerhetskopiering och återställning av SQL Server med Microsoft Azure Blob Storage finns i SÄKERHETSKOPIERing och återställning av SQL Server med Microsoft Azure Blob Storage.
K1. Återställa en fullständig databassäkerhetskopia från Microsoft Azure Storage-tjänsten
En fullständig databassäkerhetskopia, som finns på mysecondcontainer, kommer Sales att återställas till myfirstcontainer. 
              Sales finns för närvarande inte på servern.
RESTORE DATABASE Sales
  FROM URL = 'https://mystorageaccount.blob.core.windows.net/mysecondcontainer/Sales.bak'
  WITH MOVE 'Sales_Data1' to 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_Data1.mdf',
  MOVE 'Sales_log' to 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_log.ldf',
  STATS = 10;
K2. Återställa en fullständig databassäkerhetskopia från Microsoft Azure Storage-tjänsten till lokal lagring
En fullständig databassäkerhetskopia, som finns på mysecondcontainer, av Sales återställs till lokal lagring. 
              Sales finns för närvarande inte på servern.
RESTORE DATABASE Sales
  FROM URL = 'https://mystorageaccount.blob.core.windows.net/mysecondcontainer/Sales.bak'
  WITH MOVE 'Sales_Data1' to 'H:\DATA\Sales_Data1.mdf',
  MOVE 'Sales_log' to 'O:\LOG\Sales_log.ldf',
  STATS = 10;
K3. Återställa en fullständig databassäkerhetskopia från lokal lagring till Microsoft Azure Storage-tjänsten
RESTORE DATABASE Sales
  FROM DISK = 'E:\BAK\Sales.bak'
  WITH MOVE 'Sales_Data1' to 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_Data1.mdf',
  MOVE 'Sales_log' to 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_log.ldf',
  STATS = 10;
L. Återställa från säkerhetskopiering av ögonblicksbilder
Introducerades i SQL Server 2022 (16.x). Mer information finns i Skapa en Transact-SQL säkerhetskopia av ögonblicksbilder.
L1. Återställa en fullständig säkerhetskopia
RESTORE DATABASE Sales
  FROM DISK = 'D:\MSSQL\Backup\SalesSnapshotFull.bkm'
  WITH METADATA_ONLY;
L2. Återställa en säkerhetskopia och tillämpa en transaktionslogg
RESTORE DATABASE Sales
  FROM DISK = 'D:\MSSQL\Backup\SalesSnapshotFull.bkm'
  WITH METADATA_ONLY,
  NORECOVERY;
RESTORE LOG Sales
  FROM DISK = 'D:\MSSQL\Backup\SalesLog.trn'
  WITH RECOVERY;
L3. Återställa från en säkerhetskopiering av ögonblicksbilder och placera databas- och loggfiler på en ny plats
RESTORE DATABASE Sales
FROM DISK = 'D:\MSSQL\Backup\SalesSnapshotFull.bkm'
WITH METADATA_ONLY,
    MOVE Sales_Data TO 'D:\MSSQL\Sales.mdf',
    MOVE Sales_Log TO 'D:\MSSQL\Sales_log.ldf';
Nästa steg
- Översikt över återställning och återställning (SQL Server)
- säkerhetskopiering och återställning av SQL Server-databaser
- Säkerhetskopiera och återställa systemdatabaser (SQL Server)
- Återställa en databassäkerhetskopia med hjälp av SSMS
- Säkerhetskopiera och återställa Full-Text kataloger och index
- Säkerhetskopiera och återställa replikerade databaser
- SÄKERHETSKOPIA
- Medieuppsättningar, mediefamiljer och säkerhetskopieringsuppsättningar
- ÅTERSTÄLL IGENWINDONLY
- ÅTERSTÄLL VERIFYONLY
- ÅTERSTÄLL FILELISTONLY (Transact-SQL)
- ÅTERSTÄLL HEADERONLY (Transact-SQL)
- Säkerhetskopieringshistorik och rubrikinformation
* SQL Managed Instance *
Hanterad instans i Azure SQL
Med det här kommandot kan du återställa en hel databas från en fullständig databassäkerhetskopia (en fullständig återställning) från Azure Blob Storage-kontot.
Andra återställningskommandon som stöds finns i:
- ÅTERSTÄLL FILELISTONLY (Transact-SQL)
- ÅTERSTÄLL HEADERONLY (Transact-SQL)
- ÅTERSTÄLL ENDAST LABELONLY (Transact-SQL)
- ÅTERSTÄLL VERIFYONLY (Transact-SQL)
Viktigt!
Information om hur du återställer automatiska säkerhetskopieringar från SQL Managed Instance finns i Återställning av SQL Database.
Syntax
--To Restore an Entire Database from a Full database backup (a Complete Restore):
RESTORE DATABASE { database_name | @database_name_var }
 FROM URL = { 'physical_device_name' | @physical_device_name_var } [ ,...n ]
[;]
Arguments
DATABASE
Anger måldatabasen.
FRÅN URL
Anger en eller flera säkerhetskopieringsenheter som placeras på URL:er som ska användas för återställningsåtgärden. URL-formatet används för att återställa säkerhetskopior från Microsoft Azure-lagringstjänsten.
Viktigt!
För att kunna återställa från flera enheter när du återställer från URL måste du använda SAS-token (Signatur för delad åtkomst). Exempel på hur du skapar en signatur för delad åtkomst finns i Säkerhetskopiering till URL för SQL Server och Förenkla skapandet av SQL-autentiseringsuppgifter med SAS-token (Signatur för delad åtkomst) i Azure Storage med PowerShell.
n Är en platshållare som anger att upp till 64 säkerhetskopieringsenheter kan anges i en kommaavgränsad lista.
Anmärkningar
Som en förutsättning måste du skapa en autentiseringsuppgift med namnet som matchar url:en för bloblagringskontot och signatur för delad åtkomst som placeras som hemlighet. KOMMANDOT RESTORE söker efter autentiseringsuppgifter med hjälp av bloblagrings-URL:en för att hitta den information som krävs för att läsa säkerhetskopieringsenheten.
ÅTERSTÄLLNINGsåtgärden är asynkron – återställningen fortsätter även om klientanslutningen bryts. Om anslutningen tas bort kan du kontrollera sys.dm_operation_status vy för status för en återställningsåtgärd (samt för CREATE- och DROP-databas).
Följande databasalternativ anges/åsidosättas och kan inte ändras senare:
- NEW_BROKER (om asynkron meddelandekö inte är aktiverat i .bak fil)
- ENABLE_BROKER (om asynkron meddelandekö inte är aktiverat i .bak fil)
- AUTO_CLOSE=OFF (om en databas i .bak fil har AUTO_CLOSE=ON)
- ÅTERSTÄLLNING FULL (om en databas i .bak fil har EN ENKEL eller BULK_LOGGED återställningsmodell)
- Minnesoptimerad filgrupp läggs till och kallas XTP om den inte fanns i källfilen .bak. Alla befintliga minnesoptimerade filgrupper har bytt namn till XTP
- SINGLE_USER och RESTRICTED_USER alternativ konverteras till MULTI_USER
Begränsningar – SQL Managed Instance
Dessa begränsningar gäller:
- . DET går inte att återställa BAK-filer som innehåller flera säkerhetskopieringsuppsättningar.
- . DET går inte att återställa BAK-filer som innehåller flera loggfiler.
- Återställningen misslyckas om .bak innehåller FILESTREAM-data.
- Säkerhetskopior som innehåller databaser som har aktiva minnesinterna objekt kan inte återställas till en prestandanivå för generell användning.
- Säkerhetskopieringar som innehåller databaser i skrivskyddat läge kan för närvarande inte återställas.
Mer information finns i Azure SQL Managed Instance
Återställa en krypterad databas
Om du vill återställa en databas som är krypterad måste du ha åtkomst till certifikatet eller den asymmetriska nyckel som användes för att kryptera databasen. Utan certifikatet eller den asymmetriska nyckeln kan databasen inte återställas. Därför måste certifikatet som används för att kryptera databaskrypteringsnyckeln behållas så länge säkerhetskopieringen behövs. Mer information finns i SQL Server-certifikat och asymmetriska nycklar.
Permissions
Användaren måste ha CREATE DATABASE behörighet för att kunna köra RESTORE.
CREATE LOGIN mylogin WITH PASSWORD = 'Very Strong Pwd123!';
GRANT CREATE ANY DATABASE TO [mylogin];
ÅTERSTÄLLNINGsbehörigheter ges till roller där medlemskapsinformation alltid är lättillgänglig för servern. Eftersom fast databasrollmedlemskap endast kan kontrolleras när databasen är tillgänglig och oskadad, vilket inte alltid är fallet när RESTORE körs, har medlemmar i den fasta databasrollen db_owner inte ÅTERSTÄLLNINGsbehörigheter.
Examples
I följande exempel återställs endast en säkerhetskopia av en databas från URL, inklusive skapandet av en autentiseringsuppgift.
A. Återställa databasen från fyra enheter för säkerhetskopiering
-- Create credential
CREATE CREDENTIAL [https://mybackups.blob.core.windows.net/wide-world-importers]
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
      SECRET = 'sv=2017-11-09&ss=bq&srt=sco&sp=rl&se=2022-06-19T22:41:07Z&st=2018-06-01T14:41:07Z&spr=https&sig=s7wddcf0w%3D';
GO
-- Restore database
RESTORE DATABASE WideWorldImportersStandard
FROM URL = N'https://mybackups.blob.core.windows.net/wide-world-importers/00-WideWorldImporters-Standard.bak',
URL = N'https://mybackups.blob.core.windows.net/wide-world-importers/01-WideWorldImporters-Standard.bak',
URL = N'https://mybackups.blob.core.windows.net/wide-world-importers/02-WideWorldImporters-Standard.bak',
URL = N'https://mybackups.blob.core.windows.net/wide-world-importers/03-WideWorldImporters-Standard.bak'
Följande fel visas om databasen redan finns: Msg 1801, Level 16, State 1, Line 9 Database 'WideWorldImportersStandard' already exists. Choose a different database name.
B. Återställa databasen som angetts via variabel
DECLARE @db_name sysname = 'WideWorldImportersStandard';
DECLARE @url nvarchar(400) = N'https://mybackups.blob.core.windows.net/wide-world-importers/WideWorldImporters-Standard.bak';
RESTORE DATABASE @db_name
FROM URL = @url
C. Spåra förloppet för återställningsinstrukeringen
SELECT query = a.text, start_time, percent_complete,
    eta = dateadd(second,estimated_completion_time/1000, getdate())
FROM sys.dm_exec_requests r
    CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) a
WHERE r.command = 'RESTORE DATABASE'
Anmärkning
Den här vyn visar förmodligen två återställningsbegäranden. Den ena är den ursprungliga RESTORE-instruktionen som skickas av klienten, och den andra är bakgrundsåterställningssatsen som körs även om klientanslutningen misslyckas.
              
              
              
              * Analys
Plattformssystem (PDW) *
Analysplattformssystem
Återställer en PDW-användardatabas (Analytics Platform System) från en databassäkerhetskopia till en PDW-installation (Analytics Platform System). Databasen återställs från en säkerhetskopia som tidigare skapades av kommandot Analytics Platform System (PDW) BACKUP DATABASE – Analytics Platform System . Använd säkerhetskopierings- och återställningsåtgärderna för att skapa en haveriberedskapsplan eller för att flytta databaser från en installation till en annan.
Anmärkning
Återställning av systemdatabasen master omfattar återställning av inloggningsinformation för installationen. Om du vill återställa master databasen använder du sidan Återställ huvuddatabasen i Configuration Manager-verktyget . En administratör med åtkomst till kontrollnoden kan utföra den här åtgärden. Mer information om pdw-databassäkerhetskopior (Analytics Platform System) finns i "Säkerhetskopiering och återställning" i produktdokumentationen Analytics Platform System (PDW).
Syntax
-- Restore the master database
-- Use the Configuration Manager tool.
Restore a full user database backup.
RESTORE DATABASE database_name
    FROM DISK = '\\UNC_path\full_backup_directory'
[;]
--Restore a full user database backup and then a differential backup.
RESTORE DATABASE database_name
    FROM DISK = '\\UNC_path\differential_backup_directory'
    WITH [ ( ] BASE = '\\UNC_path\full_backup_directory' [ ) ]
[;]
--Restore header information for a full or differential user database backup.
RESTORE HEADERONLY
    FROM DISK = '\\UNC_path\backup_directory'
[;]
Arguments
ÅTERSTÄLL DATABAS database_name
Anger att en användardatabas ska återställas till en databas med namnet database_name. Den återställda databasen kan ha ett annat namn än källdatabasen som säkerhetskopierades. database_name kan inte redan finnas som en databas på målinstallationen. Mer information om tillåtna databasnamn finns i produktdokumentationen "Namngivningsregler för objekt" i produktdokumentationen för Analysplattformssystem (PDW).
Om du återställer en användardatabas återställs en fullständig säkerhetskopia av databasen och du kan sedan återställa en differentiell säkerhetskopia till installationen. En återställning av en användardatabas omfattar återställning av databasanvändare och databasroller.
FRÅN DISK = '\\UNC_path\backup_directory'
Nätverkssökvägen och katalogen från vilken Analytics Platform System (PDW) återställer säkerhetskopieringsfilerna. Till exempel FROM DISK = '\\xxx.xxx.xxx.xxx\backups\2012\Monthly\08.2012.Mybackup'.
backup_directory Anger namnet på en katalog som innehåller den fullständiga eller differentiella säkerhetskopian. Du kan till exempel utföra en RESTORE HEADERONLY-åtgärd på en fullständig eller differentiell säkerhetskopia.
full_backup_directory Anger namnet på en katalog som innehåller den fullständiga säkerhetskopian.
differential_backup_directory Anger namnet på den katalog som innehåller differentiell säkerhetskopia.
- Sökvägen och säkerhetskopieringskatalogen måste redan finnas och måste anges som en fullständig unc-sökväg (Universal Naming Convention).
- Sökvägen till säkerhetskopieringskatalogen kan inte vara en lokal sökväg och den kan inte vara en plats på någon av pdw-installationsnoderna (Analytics Platform System).
- Den maximala längden på UNC-sökvägen och namnet på säkerhetskopieringskatalogen är 200 tecken.
- Servern eller värden måste anges som en IP-adress.
ÅTERSTÄLL HEADERONLY
Anger att endast huvudinformationen ska returneras för en säkerhetskopia av användardatabasen. Rubriken innehåller bland annat textbeskrivningen för säkerhetskopian och säkerhetskopieringsnamnet. Säkerhetskopieringsnamnet behöver inte vara samma som namnet på katalogen som lagrar säkerhetskopieringsfilerna.
RESTORE HEADERONLY-resultaten är mönstrade efter RESULTATET AV SQL Server RESTORE HEADERONLY. Resultatet har över 50 kolumner, som inte alla används av Analytics Platform System (PDW). En beskrivning av kolumnerna i SQL Server RESTORE HEADERONLY-resultaten finns i RESTORE HEADERONLY( RESTORE HEADERONLY).
Permissions
Kräver behörigheten CREATE ANY DATABASE .
Kräver ett Windows-konto som har behörighet att komma åt och läsa från säkerhetskopieringskatalogen. Du måste också lagra Windows-kontonamnet och lösenordet i Analytics Platform System (PDW).
- Om du vill kontrollera att autentiseringsuppgifterna redan finns där använder du sys.dm_pdw_network_credentials.
- Om du vill lägga till eller uppdatera autentiseringsuppgifterna använder du sp_pdw_add_network_credentials – Azure Synapse Analytics.
- Om du vill ta bort autentiseringsuppgifter från Analytics Platform System (PDW) använder du sp_pdw_remove_network_credentials – Azure Synapse Analytics.
Felhantering
KOMMANDOT RESTORE DATABASE resulterar i fel under följande villkor:
- Namnet på databasen som ska återställas finns redan på målinstallationen. Undvik detta genom att välja ett unikt databasnamn eller släppa den befintliga databasen innan du kör återställningen.
- Det finns en ogiltig uppsättning säkerhetskopieringsfiler i säkerhetskopieringskatalogen.
- Inloggningsbehörigheterna räcker inte för att återställa en databas.
- Analytics Platform System (PDW) har inte rätt behörighet till den nätverksplats där säkerhetskopieringsfilerna finns.
- Nätverksplatsen för säkerhetskopieringskatalogen finns inte eller är inte tillgänglig.
- Det finns inte tillräckligt med diskutrymme på beräkningsnoderna eller kontrollnoden. Analysplattformssystemet (PDW) bekräftar inte att det finns tillräckligt med diskutrymme på enheten innan återställningen påbörjas. Därför är det möjligt att generera ett fel om out-of-disk-space när du kör instruktionen RESTORE DATABASE. När det inte finns tillräckligt med diskutrymme återställer Analytics Platform System (PDW) återställningen.
- Målinstallationen som databasen återställs till har färre beräkningsnoder än den källinstallation som databasen säkerhetskopierades från.
- Databasåterställningen görs inifrån en transaktion.
Anmärkningar
Analytics Platform System (PDW) spårar lyckade databasåterställningar. Innan du återställer en differentiell databassäkerhetskopia verifierar Analytics Platform System (PDW) att den fullständiga databasåterställningen har slutförts.
Efter en återställning har användardatabasen databaskompatibilitetsnivå 120. Detta gäller för alla databaser oavsett deras ursprungliga kompatibilitetsnivå.
Återställa till en installation med ett större antal beräkningsnoder
Kör DBCC SHRINKLOG (Azure Synapse Analytics) när du har återställt en databas från en mindre till större installation eftersom omdistributionen ökar transaktionsloggen.
Om du återställer en säkerhetskopia till en installation med ett större antal beräkningsnoder ökar den allokerade databasstorleken i förhållande till antalet beräkningsnoder.
När du till exempel återställer en 60 GB-databas från en 2-nodinstallation (30 GB per nod) till en 6-nodinstallation skapar Analytics Platform System (PDW) en 180 GB-databas (6 noder med 30 GB per nod) på 6-nodinstallationen. Analytics Platform System (PDW) återställer först databasen till 2 noder för att matcha källkonfigurationen och distribuerar sedan data till alla 6 noder.
Efter omfördelningen innehåller varje beräkningsnod mindre faktiska data och mer ledigt utrymme än varje beräkningsnod på den mindre källinstallationen. Använd det extra utrymmet för att lägga till mer data i databasen. Om den återställda databasstorleken är större än du behöver kan du använda ALTER DATABASE – PDW för att krympa databasfilstorlekarna.
Begränsningar och restriktioner
För dessa begränsningar är källinstallationen den installation som databassäkerhetskopian skapades från, och målinstallationen är den installation som databasen ska återställas till.
- Återställning av en databas återskapar inte statistik automatiskt.
- Endast en RESTORE DATABASE- eller BACKUP DATABASE-instruktion kan köras på installationen vid en viss tidpunkt. Om flera säkerhetskopierings- och återställningsuttryck skickas samtidigt placeras de i en kö och bearbetar dem en i taget.
- Du kan bara återställa en databassäkerhetskopia till en PDW-målinstallation (Analytics Platform System) som har samma antal eller fler beräkningsnoder än källinstallationen. Målinstallationen får inte ha färre beräkningsnoder än källinstallationen.
- Du kan inte återställa en säkerhetskopia som har skapats på en installation som har SQL Server 2012 PDW-maskinvara till en installation som har SQL Server 2008 R2-maskinvara. Detta gäller även om installationen ursprungligen köptes med SQL Server 2008 R2 PDW-maskinvaran och nu kör SQL Server 2012 PDW-programvara.
Låsning
Tar ett exklusivt lås på DATABASE-objektet.
Examples
A. Exempel på enkel ÅTERSTÄLLNING
I följande exempel återställs en fullständig säkerhetskopia till SalesInvoices2013 databasen. Säkerhetskopieringsfilerna \\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full lagras i katalogen. Databasen SalesInvoices2013 kan inte redan finnas på målinstallationen, annars misslyckas det här kommandot med ett fel.
RESTORE DATABASE SalesInvoices2013
FROM DISK = '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full';
B. Återställa en fullständig och differentiell säkerhetskopia
I följande exempel återställs en fullständig och sedan en differentiell säkerhetskopia till SalesInvoices2013 databasen
Den fullständiga säkerhetskopian av databasen återställs från den fullständiga säkerhetskopian som lagras i \\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full katalogen. Om återställningen har slutförts återställs differentiell säkerhetskopiering till SalesInvoices2013 databasen. Differentiell säkerhetskopiering lagras i \\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Diff katalogen.
RESTORE DATABASE SalesInvoices2013
    FROM DISK = '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Diff'
    WITH BASE = '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full'
[;]
C. Återställa säkerhetskopieringshuvudet
I det här exemplet återställs rubrikinformationen för databassäkerhetskopiering \\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full. Kommandot resulterar i en rad med information för säkerhetskopieringen Invoices2013Full .
RESTORE HEADERONLY
    FROM DISK = '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full'
[;]
Du kan använda rubrikinformationen för att kontrollera innehållet i en säkerhetskopia eller för att kontrollera att målåterställningsinstallationen är kompatibel med källsäkerhetskopian innan du försöker återställa säkerhetskopian.