kan ik transactielogboekbestand van SQL Server verwijderen?
we kunnen geen primair transactielogboekbestand verwijderen, maar we kunnen secundaire logbestanden in SQL Server verwijderen.
soms kunnen we een tweede logbestand maken op een andere schijf als een tijdelijke oplossing omdat het logbestand vol is.
als we deze tijdelijke secundaire logbestanden na verloop van tijd niet verwijderen, zal het aantal logbestanden toenemen.
wanneer we vrije ruimte hebben op de schijf waar het eerste logbestand zich bevindt, of wanneer we dit eerste logbestand verplaatsen naar een andere schijf met voldoende ruimte, kunnen we deze tijdelijke secundaire logbestanden verwijderen.
om te zien hoe een tweede logbestand aan de database wordt toegevoegd, kunt u het artikel “hoe het tweede logbestand aan de Database wordt toegevoegd”lezen.
als het herstelmodel van uw database volledig herstelmodel is, raad ik u aan een back-up te maken van uw transactielogboek. Zo, uw transactielogboek bestand automatisch afgekapt na log back-up en dit voorkomt dat uw transactielogboek te veel groeien.
u kunt de volgende artikelen lezen voor gedetailleerde informatie over herstelmodellen en transactielogboek.
“What is Database Recovery Model”,
“What is SQL Server Transaction Log”,
“How to Shrink SQL Server Transaction Log”
Empty Secondary Transaction Log File Before removal
na het maken van een back-up van het transactielogboek, moeten we het logbestand dat we willen verwijderen verkleinen met de lege optie.
eerst klikt u met de rechtermuisknop op de database en klikt u op taken-> krimp-> bestanden.
we selecteren de Log optie uit de sectie bestandstype zoals hieronder getoond.
we kiezen het bestand dat we willen verkleinen van de bestandsnaam.
in de sectie Shrink action selecteren we ook “Empty file by migrating the data to other files in the same filegroup”.
op deze manier kunnen we de gegevens in het logbestand overdragen naar de andere logbestanden.
voordat we op Ok klikken, laten we het script nemen door op het “Script” linksboven te klikken. Dit zal een script als het volgende uitvoeren.
1
2
3
4
|
GEBRUIK
NAAR
DBCC SHRINKFILE (N’TestDB_log2′ , EMPTYFILE)
GA
|
Verwijder Secundaire Transactie Log boek Bestand
Rechts-klikken op de database en klik op Eigenschappen.
Ga naar het tabblad” Bestanden ” aan de linkerkant en selecteer het logbestand dat u wilt verwijderen uit de “database files” sectie en klik op de knop Verwijderen aan de onderkant rechts. Klik ten slotte op” Script ” aan de bovenkant om het script voor het verwijderen van het secundaire logbestand te krijgen.
dit zal een script als het volgende uitvoeren.
1
2
3
4
|
GEBRUIK
NAAR
ALTER DATABASE VERWIJDEREN BESTAND
GA
|
U kunt verwijderen van de log bestand door het combineren van deze twee scripts als volgt.
1
2
3
4
5
6
|
GEBRUIK
NAAR
DBCC SHRINKFILE (N’TestDB_log2′ , EMPTYFILE)
NAAR
ALTER DATABASE VERWIJDEREN BESTAND
GA
|
Na het verwijderen van de secundaire log bestand, kan het lijken dat het niet is verwijderd uit de database voor een tijdje. Maak je geen zorgen, dit is normaal. Het zal na een tijdje weer normaal worden.
Author: dbtut
We are a team with over 10 years of database management and BI experience. Our Expertises: Oracle, SQL Server, PostgreSQL, MySQL, MongoDB, Elasticsearch, Kibana, Grafana.