Delen via


CHECKPOINT (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric Preview

Hiermee wordt een handmatig controlepunt gegenereerd in de SQL Server-database waarmee u momenteel bent verbonden.

Aanbeveling

Zie Database-controlepunten (SQL Server) voor informatie over verschillende typen databasecontrolepunten en controlepunten in het algemeen.

Transact-SQL syntaxis-conventies

Syntax

CHECKPOINT [ checkpoint_duration ]  

Arguments

checkpoint_duration

Hiermee geeft u de aangevraagde hoeveelheid tijd, in seconden, op voordat het handmatige controlepunt is voltooid.

checkpoint_duration is een geavanceerde optie.

Wanneer checkpoint_duration is opgegeven, probeert de SQL Server Database Engine het controlepunt binnen de aangevraagde duur uit te voeren.

De checkpoint_duration moet een expressie van het type int zijn en moet groter zijn dan nul.

Wanneer deze parameter wordt weggelaten, past de database-engine de duur van het controlepunt aan om de invloed van de prestaties op databasetoepassingen te minimaliseren.

Factoren die van invloed zijn op de duur van controlepuntbewerkingen

Over het algemeen neemt de hoeveelheid tijd die nodig is voor een controlepuntbewerking toe met het aantal vuile pagina's dat de bewerking moet schrijven. Als u de invloed van de prestaties op andere toepassingen wilt minimaliseren, past SQL Server de frequentie van schrijfbewerkingen aan die een controlepuntbewerking uitvoert. Als u de schrijffrequentie verlaagt, neemt de tijd toe die nodig is om de controlepuntbewerking te voltooien. SQL Server gebruikt deze strategie voor een handmatig controlepunt, tenzij een checkpoint_duration waarde is opgegeven in de CHECKPOINT opdracht.

De invloed op de prestaties van het gebruik van checkpoint_duration is afhankelijk van het aantal vuile pagina's, de activiteit op het systeem en de werkelijke duur die is opgegeven.

  • Als het controlepunt bijvoorbeeld normaal gesproken binnen 120 seconden zou worden voltooid, zorgt het opgeven van een checkpoint_duration van 45 seconden ervoor dat SQL Server meer resources aan het controlepunt toewijst dan standaard wordt toegewezen.

  • Als u daarentegen een checkpoint_duration van 180 seconden opgeeft, wordt SQL Server minder resources toegewezen dan standaard wordt toegewezen.

Over het algemeen zal een korte checkpoint_duration de middelen voor het controlepunt verhogen, terwijl een lange checkpoint_duration de middelen voor het controlepunt zal verminderen. SQL Server voltooit altijd een controlepunt indien mogelijk en de CHECKPOINT instructie wordt onmiddellijk geretourneerd wanneer een controlepunt is voltooid. In sommige gevallen kan een controlepunt daarom sneller worden voltooid dan de opgegeven duur of langer kan worden uitgevoerd dan de opgegeven duur.

Permissions

CHECKPOINT machtigingen zijn standaard ingesteld op leden van de vaste serverrol sysadmin en de db_owner en db_backupoperator vaste databaserollen en zijn niet overdraagbaar.