Dela via


Ange säkerhetskopiering eller återställning för att fortsätta eller stoppa efter fel

gäller för:SQL Server

I det här avsnittet beskrivs hur du anger om en säkerhetskopierings- eller återställningsåtgärd ska fortsätta eller stoppas efter ett fel i SQL Server med hjälp av SQL Server Management Studio eller Transact-SQL.

i det här avsnittet

Innan du börjar

Säkerhet

Behörigheter

SÄKERHETSKOPIA
Behörigheter för säkerhetskopiera databas och säkerhetskopiera logg är standardinställningar för medlemmar i sysadmin fast serverroll och db_owner och db_backupoperator fasta databasroller.

Ägarskaps- och behörighetsproblem på säkerhetskopieringsenhetens fysiska fil kan störa en säkerhetskopieringsåtgärd. SQL Server måste kunna läsa och skriva till enheten. kontot där SQL Server-tjänsten körs måste ha skrivbehörighet. Men sp_addumpdevice, som lägger till en post för en säkerhetskopieringsenhet i systemtabellerna, kontrollerar inte filåtkomstbehörigheter. Sådana problem på säkerhetskopieringsenhetens fysiska fil kanske inte visas förrän den fysiska resursen används när säkerhetskopieringen eller återställningen görs.

ÅTERSTÄLLA
Om databasen som återställs inte finns måste användaren ha behörigheten SKAPA DATABAS för att kunna köra RESTORE. Om databasen finns är återställningsbehörigheter som standard tilldelade medlemmar i serverrollerna sysadmin och dbcreator samt ägaren (dbo) till databasen (för alternativet FROM DATABASE_SNAPSHOT finns databasen alltid).

ÅTERSTÄLLNINGsbehörigheter ges till roller där medlemskapsinformation alltid är lättillgänglig för servern. Eftersom medlemskap i fasta databasroller 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 RESTORE-behörigheter.

Använda SQL Server Management Studio

Ange om säkerhetskopieringen ska fortsätta eller stoppas efter att ett fel har påträffats

  1. Följ stegen för att skapa en databassäkerhetskopia.

  2. På sidan Alternativ i avsnittet Tillförlitlighet klickar du på Utför kontrollsumma innan du skriver till media och Fortsätt vid fel.

Använda Transact-SQL

Ange om en säkerhetskopiering ska fortsätta eller stoppas när ett fel har uppstått

  1. Anslut till databasmotorn.

  2. I standardfältet klickar du på Ny fråga.

  3. I instruktionen BACKUP anger du alternativet CONTINUE_AFTER ERROR för att fortsätta eller alternativet STOP_ON_ERROR att stoppa. Standardbeteendet är att sluta efter att ett fel har uppstått. I det här exemplet instrueras säkerhetskopieringsåtgärden att fortsätta trots ett fel.

BACKUP DATABASE AdventureWorks2022   
 TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'  
   WITH CHECKSUM, CONTINUE_AFTER_ERROR;  
GO  

Ange om en återställningsåtgärd ska fortsätta eller stoppas när ett fel har uppstått

  1. Anslut till databasmotorn.

  2. I standardfältet klickar du på Ny fråga.

  3. I instruktionen RESTORE anger du alternativet CONTINUE_AFTER ERROR för att fortsätta eller alternativet STOP_ON_ERROR att stoppa. Standardbeteendet är att sluta efter att ett fel har uppstått. Det här exemplet instruerar återställningsåtgärden att fortsätta trots ett fel.

RESTORE DATABASE AdventureWorks2022   
 FROM DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'   
   WITH CHECKSUM, CONTINUE_AFTER_ERROR;  
GO  

Se även

RESTORE FILELISTONLY (Transact-SQL)
RESTORE HEADERONLY (Transact-SQL)
ÅTERSTÄLL ENDAST ETIKETT (Transact-SQL)
ÅTERSTÄLL ENDASTVERIFIERA (Transact-SQL)
SÄKERHETSKOPIA (Transact-SQL)
säkerhetskopieringsuppsättning (Transact-SQL)
RESTORE-argument (Transact-SQL)
möjliga mediefel vid säkerhetskopiering och återställning (SQL Server)
Aktivera eller inaktivera kontrollsummor för säkerhetskopiering under säkerhetskopiering eller återställning (SQL Server)