Artikel ID: 873235 - Bekijk de producten waarop dit artikel van toepassing is.
Als u een Small Business-klant bent, gaat u naar de site Support for Small Business voor aanvullende probleemoplossing en leerbronnen.
Alles uitklappen | Alles samenvouwen

Op deze pagina

Inleiding

Dit artikel beschrijft de stappen die u volgen moet wanneer de transactielogboeken te groot geworden. Volle transactielogboeken kunnen ertoe leiden dat een Microsoft SQL Server-database onbruikbaar wordt. In dit artikel is beschreven hoe u de transactieklogboeken kunt afkappen en verkleinen en op welke wijze u kunt voorkomen dat transactielogboeken onverwacht groeien.

Meer informatie

De grootte van het transactielogboek verkleinen

Als u het probleem wilt oplossen in een situatie waarin er sprake is van volle transactielogboeken, moet u de grootte van de transactielogboeken reduceren. U moet hiertoe de inactieve transacties in uw transactielogboek afkappen en de grootte van het transactielogboekbestand verkleinen.

Opmerking De transactielogboeken zijn zeer belangrijk voor het handhaven van de transactionele integriteit van de database. Het is daarom belangrijk dat de transactielogboekbestanden niet worden verwijderd. Dit geldt zelfs nadat u een back-up van uw database en transactielogboeken hebt gemaakt.


Bezoek voor meer informatie over het reduceren van de transactielogboekgrootte de volgende Microsoft-website:
Het transactielogboek voor SQL Server 2000 verkleinen
Het transactielogboek voor SQL Server 2005 verkleinen

De inactieve transacties in uw transactielogboek afkappen

Wanneer de transactielogboeken vol zijn, moet u onmiddellijk een back-up van uw transactielogboekbestand maken. SQL Server kapt automatisch het inactieve gedeelte van het transactielogboek af wanneer er een back-up van uw transactielogboekbestanden wordt gemaakt. Het inactieve gedeelte van het transactielogboekbestand bevat de voltooide transacties, met als gevolg dat het transactielogboekbestand door het terugzetproces van SQL Server niet meer wordt gebruikt. SQL Server gebruikt deze afgekapte, inactieve ruimte in het transactielogboek waardoor het transactielogboek niet verder kan groeien en waardoor er geen extra ruimte meer kan wordt gebruikt.

Zie de volgende onderwerpen in SQL Server Books Online voor meer informatie over de problemen waarmee u rekening moet houden wanneer u een back-up van de transactielogboeken maakt en over de problemen waarmee u rekening moet houden wanneer u back-ups van transactielogboeken terugzet:
  • Back-ups van transactielogboeken
  • Back-ups van transactielogboeken terugzetten
U kunt ook de inactieve transacties uit een transactielogbestand verwijderen met behulp van de afkapmethode. Zie het onderwerp Het transactielogboek afkappen in SQL Server Books Online voor meer informatie over het afkappen van de transactielogboeken.

Belangrijk Nadat u de transactielogboekbestanden handmatig hebt afgekapt, moet u een back-up van de volledige database maken voordat u een transactielogboekback-up maakt.

Klik voor meer informatie over de problemen die kunnen optreden wanneer u transactielogboekbestanden afkapt op het volgende artikelnummer, zodat het desbetreffende Microsoft Knowledge Base-artikel wordt weergegeven:
62866 Redenen waarom het SQL-transactielogboek niet wordt afgekapt (Mogelijk alleen beschikbaar in het Engels)

Het transactielogboekbestand verkleinen

De back-upbewerking of het gebruik van de afkapmethode leidt niet tot een gereduceerde logboekbestandsgrootte. Als u de grootte van het transactielogboekbestand wilt verminderen, moet u het transactielogbestand verkleinen. U moet een DBCC SHRINKFILE-bewerking gebruiken als u het transactielogboekbestand wilt verkleinen tot de gewenste grootte en als u de ongebruikte pagina's wilt verwijderen. De DBCC SHRINKFILE Transact-SQL-instructie kan alleen het inactieve gedeelte in het logboekbestand verkleinen.

Opmerking De DBCC SHRINKFILE Transact-SQL-instructie kan niet los worden gebruikt voor het afkappen van het logboek en het verkleinen van de gebruikte hoeveelheid ruimte in het logboekbestand.

Zie de volgende onderwerpen in SQL Server Books Online voor meer informatie over het verkleinen van de transactielogbestanden:
  • Het transactielogboek verkleinen
  • DBCC SHRINKFILE
Klik voor meer informatie over het verkleinen van de transactielogboekbestanden in SQL Server 2000 op het volgende artikelnummer, zodat het desbetreffende Microsoft Knowledge Base-artikel wordt weergegeven:
272318 Het transactielogboek in SQL Server 2000 verkleinen met DBCC SHRINKFILE (Mogelijk alleen beschikbaar in het Engels)
Voor meer informatie over de problemen die kunnen optreden wanneer u transactielogboekbestanden verkleint, klikt u op de volgende artikelnummers, zodat de desbetreffende Microsoft Knowledge Base-artikelen wordt weergegeven:
814574 PRB: Foutbericht: Kan logboekbestand niet verkleinen wordt weergegeven wanneer u het transactielogbestand verkleint (Mogelijk alleen beschikbaar in het Engels)
324432 PRB: De opdrachten DBCC SHRINKFILE en SHRINKDATABASE werken mogelijk niet vanwege verspreide gevuld tekst-, ntext- of afbeeldingskolommen (Mogelijk alleen beschikbaar in het Engels)

Voorkomen dat transactielogboekbestanden onverwacht groeien

U kunt overwegen om een van de volgende methoden te gebruiken als u wilt voorkomen dat transactielogboekbestanden onverwacht groeien:
  • De grootte van de transactielogboekbestanden instellen op een hoge waarde, zodat automatische uitbreiding van de transactielogboekbestanden wordt voorkomen.
  • De automatische uitbreiding van transactielogboekbestanden configureren met behulp van geheugeneenheden in plaats van een percentage na een grondige beoordeling van de optimale geheugengrootte.

    Klik voor meer informatie over de problemen waarmee u rekening moet houden wanneer u de optie voor automatische groei configureert op het volgende artikelnummer, zodat het desbetreffende Microsoft Knowledge Base-artikel wordt weergegeven:
    315512 Overwegingen voor het configureren van automatische groei en automatische verkleining (Mogelijk alleen beschikbaar in het Engels)
  • Het herstelmodel wijzigen Als er een ramp of gegevensbeschadiging optreedt, moet u uw database herstellen, zodat de gegevensconsistentie en de transactionele integriteit van de database behouden blijven. U kunt op basis van het belang van de gegevens in uw database een van de volgende herstelmodelen gebruiken om te bepalen op welke wijze er een back-up van uw gegevens wordt gemaakt en in welke mate er sprake is van blootstelling aan gegevensverlies:
    • Een eenvoudig herstelmodel
    • Een model voor volledig herstel
    • Een herstelmodel met bulksgewijs geregistreerde wijzigingen
    Wanneer u gebruikmaakt van een eenvoudig herstelmodel, kunt u de database herstellen tot het niveau van de recentste back-up van uw database. Wanneer u gebruikmaakt van een herstelmodel met volledige back-ups of bulksgewijs geregistreerde wijzigingen, kunt u uw database herstellen tot het punt waarop het probleem is opgetreden door de back-upbestanden van uw database en het transactielogboek terug te zetten.

    Het herstelmodel voor een SQL Server-database wordt in SQL Server 2000 en in SQL Server 2005 standaard ingesteld op het model voor volledig herstel. In het geval van het model voor een volledig herstel worden er regelmatige back-ups van het transactielogboek gemaakt om te voorkomen dat het transactielogboekbestand te groot wordt. Als de regelmatige back-ups van het transactielogboek echter niet worden uitgevoerd, groeit het transactielogboek, totdat dit de schijf vult en u mogelijk niet meer in staat bent om bewerkingen voor het aanpassen van gegevens in de SQL Server-database uit te voeren.

    U kunt het herstelmodel voor een volledig herstel omruilen voor een eenvoudig herstelmodel als u tijdens een noodherstelbewerking geen gebruik wenst te maken van transactielogboekbestanden.
  • Regelmatig back-ups maken van de transactielogboeken om de inactieve transacties uit uw transactielogboek te verwijderen.
  • De transacties ontwerpen met het oog op een kleine grootte.
  • Voorkomen dat niet-doorgevoerde transacties gedurende onbepaalde tijd actief blijven.
  • De optie Update statistieken zo instellen dat het bijwerken dagelijks plaatsvindt.
  • De DBCC INDEXDEFRAG Transact-SQL-instructie gebruiken in plaats van de DBCC DBREINDEX Transact-SQL-instructie voor het defragmenteren van de indexen, zodat er wordt geprofiteerd van de werkbelastingprestaties in uw productieomgeving. Als u de DBCC DBREINDEX-instructie uitvoert, wordt het transactielogboek mogelijk aanzienlijk uitgebreid wanneer voor de SQL Server-database de modus voor een volledig herstel wordt gebruikt. Daarnaast worden de vergrendelingen bij de DBCC INDEXDEGRAG-instructie niet langdurig toegepast. Dit is niet het geval bij de DBCC DBREINDEX-instructie.

    Zie de volgende Microsoft-website voor meer informatie over het defragmenteren van indexen in SQL Server 2000:
    Aanbevolen procedures voor Microsoft SQL Server 2000-indexdefragmentatie
    Als u de DBCC DBREINDEX-instructie moet uitvoeren als een taak die onderdeel is van een plan voor databaseonderhoud, moet u de taak opdelen in meerdere taken. Daarnaast moet u tussen het uitvoeren van de taken gebruikmaken van de regelmatige back-ups van de transactielogboeken.

Meer informatie over transactielogboekbestanden

Elke database bevat in SQL Server 2000 en in SQL Server 2005 ten minste één gegevensbestand en één transactielogboekbestand. SQL Server slaat de gegevens fysiek op in het gegevensbestand. Het transactieboekbestand bevat de details van alle aanpassingen die u in uw SQL Server-database aanbrengt en de details van de transacties voor de desbetreffende afzonderlijke aanpassingen. Aangezien de transactionele integriteit wordt gezien als een essentieel en wezenlijk kenmerk van SQL Server, kan de logboekregistratie van de transactiedetails in SQL Server niet worden uitgeschakeld.

Het transactielogbestand is logisch onderverdeeld in kleinere segmenten die worden aangeduid als virtuele logboekbestanden. U kunt in SQL Server 2000 instellen dat het transactielogboekbestand wordt uitgebreid wanneer dat nodig is. De uitbreiding van het transactielogboek kan door de gebruiker worden beheerd of kan zo worden geconfigureerd dat alle beschikbare schijfruimte wordt gebruikt. Eventuele wijzigingen die door SQL Server met betrekking tot de grootte van het transactielogboekbestand worden aangebracht, zoals het afkappen van de transactielogboekbestanden of het uitbreiden van de transactielogboekbestanden, worden geïmplementeerd in eenheden van virtuele logboekbestanden.

Als het transactielogboekbestand voor een SQL Server-database vol is en u hebt ingesteld dat de transactielogboekbestanden automatisch worden uitgebreid, groeit het bestand op basis van eenheden in virtuele logboekbestanden. Soms kan het transactielogbestand zeer groot worden, zodat er onvoldoende vrije schijfruimte overblijft. Wanneer een transactielogboekbestand groeit, totdat alle beschikbare schijfruimte wordt gebruikt en niet meer kan worden uitgebreid, kunnen er geen bewerkingen voor gegevensaanpassing meer op uw database worden uitgevoerd. Daarnaast markeert SQL Server uw database mogelijk als zijnde verdacht vanwege het gebrek aan ruimte voor het uitbreiden van het transactielogboek.

Klik voor meer informatie over de scenario's die ertoe kunnen leiden dat het transactielogboek onverwacht groeit op het volgende artikelnummer, zodat het desbetreffende Microsoft Knowledge Base-artikel wordt weergegeven:
317375 Het SQL Server-transactielogboek groeit onverwacht of raakt vol

Referenties

Zie het onderwerp Onvoldoende schijfruimte in SQL Server Books Online voor meer informatie over het oplossen van problemen met betrekking tot vereiste extra schijfruimte. Zie de volgende onderwerpen in SQL Server Books Online voor meer informatie over de transactielogboekarchitectuur:
  • Transactielogboekarchitectuur
  • De logische architectuur van transactielogboeken
  • De fysieke architectuur van transactielogboeken
Zie de volgende onderwerpen in SQL Server Books Online voor meer informatie over de herstelmodellen in SQL Server 2000:
  • Een herstelmodel selecteren
  • Eenvoudig herstel
  • Volledig herstel
  • Herstel op basis van bulksgewijs geregistreerde wijzigingen
  • Schakelen tussen herstelmodellen

Opmerking Dit is een artikel voor snelle publicatie dat rechtstreeks is gemaakt vanuit de ondersteuningsorganisatie van Microsoft. De informatie in dit artikel wordt in de huidige vorm aangeboden in reactie op nieuw geconstateerde problemen. Aangezien artikelen van dit type zeer snel moeten worden gepubliceerd, kan de inhoud typografische fouten bevatten en kan de inhoud zonder voorafgaande kennisgeving worden gewijzigd. Raadpleeg de Gebruiksrechtovereenkomst voor overige aandachtspunten.

Eigenschappen

Artikel ID: 873235 - Laatste beoordeling: woensdag 17 april 2013 - Wijziging: 2.1
De informatie in dit artikel is van toepassing op:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Workgroup Edition
Trefwoorden: 
kbsqlsetup kbdiskmemory kbdisasterrec kbhowto kbconfig kbinfo kbcip KB873235

Geef ons feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com