kan jag ta bort SQL Server Transaktionsloggfil?
vi kan inte ta bort primär transaktionsloggfil, men vi kan ta bort sekundära loggfiler i SQL Server.
ibland kan vi skapa en andra loggfil på en annan disk som en lösning eftersom loggfilen är full.
om vi inte tar bort dessa tillfälliga sekundära loggfiler över tiden kommer antalet loggfiler att öka.
när vi har ledigt utrymme på disken där den första loggfilen finns, eller när vi flyttar den första loggfilen till en annan disk med tillräckligt med utrymme, kan vi ta bort dessa tillfälliga sekundära loggfiler.
för att se hur en andra loggfil läggs till i databasen kanske du vill läsa artikeln ”Så här lägger du till den andra loggfilen i databasen”.
om databasens återställningsmodell är Full Återställningsmodell rekommenderar jag att du säkerhetskopierar din transaktionslogg. Så, din transaktionsloggfil trunkeras automatiskt efter loggbackup och detta förhindrar att din transaktionslogg växer för mycket.
du kanske vill läsa följande artiklar för att lära dig detaljerad information om återställningsmodeller och transaktionslogg.
”Vad är Databasåterställningsmodell”,
”vad är SQL Server-transaktionslogg”,
”hur man krymper SQL Server-transaktionslogg”
Tom sekundär Transaktionsloggfil innan du tar bort
efter säkerhetskopiering av transaktionsloggen måste vi krympa loggfilen vi vill ta bort med tomt alternativ.
först högerklickar vi på databasen och klickar på uppgifter-> krympa-> filer.
vi väljer Loggalternativet från avsnittet filtyp som visas nedan.
vi väljer filen vi vill krympa från filnamnet.
i avsnittet Shrink action väljer vi också ”tom fil genom att migrera data till andra filer i samma filgrupp”.
på detta sätt kan vi överföra data i loggfilen till de andra loggfilerna.
innan vi klickar på Ok, låt oss ta skriptet genom att klicka på ”Script” längst upp till vänster. Detta kommer att mata ut ett skript som följande.
1
2
3
4
|
använd
gå
DBCC SHRINKFILE (N ’Testdb_log2’, EMPTYFILE)
gå
|
ta bort sekundär Transaktionsloggfil
högerklicka på databasen och klicka på Egenskaper.
gå till fliken ” Filer ”till vänster och välj loggfilen som du vill ta bort från avsnittet” databasfiler ” och klicka på knappen Ta bort längst ner till höger. Slutligen klickar du på” Script ” på övre sidan för att få bort sekundär loggfilskript.
detta kommer att mata ut ett skript som följande.
1
2
3
4
|
använd
gå
ändra databas ta bort fil
gå
|
du kan ta bort loggfilen genom att kombinera dessa två skript enligt följande.
1
2
3
4
5
6
|
använd
gå
DBCC SHRINKFILE (N ’Testdb_log2’, EMPTYFILE)
gå
ändra databas ta bort fil
gå
|
när du har tagit bort den sekundära loggfilen kan det tyckas att den inte har tagits bort från databasen på ett tag. Oroa dig inte, det här är normalt. Det kommer att återgå till normalt tillstånd efter ett tag.
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.