Delen via


Controlesommen in- of uitschakelen tijdens het maken van een back-up of herstellen (SQL Server)

van toepassing op:SQL Server-

In dit artikel wordt beschreven hoe u back-upcontrolesommen inschakelt of uitschakelt wanneer u een back-up maakt of een database herstelt in SQL Server met behulp van SQL Server Management Studio of Transact-SQL.

Machtigingen

BACKUP

BACKUP DATABASE- en BACKUP LOG-machtigingen zijn standaard ingesteld op leden van de sysadmin vaste serverfunctie en de db_owner en db_backupoperator vaste databaserollen.

Eigendoms- en machtigingsproblemen in het fysieke bestand van het back-upapparaat kunnen een back-upbewerking verstoren. SQL Server moet kunnen lezen en schrijven naar het apparaat; het account waaronder de SQL Server-service wordt uitgevoerd, moet schrijfmachtigingen hebben. Hoewel sp_addumpdeviceeen vermelding voor een back-upapparaat in de systeemtabellen toevoegt, worden de machtigingen voor bestandstoegang niet gecontroleerd. Dergelijke problemen in het fysieke bestand van het back-upapparaat kunnen pas merkbaar worden wanneer de fysieke bron wordt benaderd tijdens het uitvoeren van een back-up of herstel.

HERSTELLEN

Als de database die wordt hersteld niet bestaat, moet de gebruiker CREATE DATABASE machtigingen hebben om RESTOREuit te voeren. Als de database bestaat, worden RESTORE machtigingen standaard ingesteld op leden van de sysadmin en dbcreator vaste serverfuncties en de eigenaar (dbo) van de database (voor de optie FROM DATABASE_SNAPSHOT bestaat de database altijd).

RESTORE machtigingen worden gegeven aan rollen waarin lidmaatschapsgegevens altijd direct beschikbaar zijn voor de server. Omdat het lidmaatschap van een vaste databaserol alleen kan worden gecontroleerd wanneer de database toegankelijk en onbeschadigd is, wat niet altijd het geval is wanneer RESTORE wordt uitgevoerd, hebben leden van de db_owner vaste databaserol geen RESTORE machtigingen.

SQL Server Management Studio gebruiken

Controlesommen aan- of uitzetten tijdens een back-upbewerking

  1. Volg de stappen om een databaseback-up te maken.

  2. Selecteer op de pagina Opties in de sectie BetrouwbaarheidControlesom uitvoeren voordat u naar mediaschrijft.

Gebruik Transact-SQL

Back-upcontroleom in- of uitschakelen voor een back-upbewerking

  1. Maak verbinding met de database-engine.

  2. Selecteer in de standaardbalk Nieuwe query.

  3. Als u back-upcontroles wilt inschakelen in een BACKUP-instructie (Transact-SQL), moet u de optie WITH CHECKSUM opgeven. Om checksommen van back-ups uit te schakelen, specificeert u optie WITH NO_CHECKSUM. Dit is het standaardgedrag, met uitzondering van een gecomprimeerde back-up. In het volgende voorbeeld wordt gespecificeerd dat controlesommen moeten worden uitgevoerd.

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

Back-upcontroleom in- of uitschakelen voor een herstelbewerking

  1. Maak verbinding met de database-engine.

  2. Vanaf de standaardbalk Nieuwe Queryselecteren.

  3. Als u back-upcontroles wilt inschakelen in een RESTORE-instructie (Transact-SQL), geeft u de optie WITH CHECKSUM op. Dit is het standaardgedrag voor een gecomprimeerde back-up. Als u back-upcontrolesommen wilt uitschakelen, moet u optie WITH NO_CHECKSUM opgeven. Dit is het standaardgedrag, met uitzondering van een gecomprimeerde back-up. In het volgende voorbeeld wordt aangegeven dat checksums voor back-ups worden uitgevoerd.

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

Waarschuwing

Als u expliciet CHECKSUM aanvraagt voor een hersteloperatie en de back-up controlesommen bevat, worden zowel de back-upcontrolesommen als de paginacontrolesommen geverifieerd, zoals in het standaardgeval. Als de back-upset echter geen back-upcontrolesommen bevat, mislukt de herstelbewerking met een bericht dat aangeeft dat er geen controlesommen aanwezig zijn.