January 22, 2010 at 8:46 am
To shrink a log file, is it necessary to do a log backup? Can we just use dbcc shrinkfile?
I just restored the database and put it in simple mode and tried just the dbcc shrinkfile. Also there was a message saying couldn’t shrink log because all logical log files are in use. But yet it didn’t give any error, it succeeded and the log file was reduced in size. So I didn’t understand what happened. Again, can we use just dbcc shrinkfile?
January 22, 2010 at 10:59 am
jsb12 (1/22/2010)
To shrink a log file, is it necessary to do a log backup? Can we just use dbcc shrinkfile?
To shrink a file and give space to OS you have to make use of dbcc shrinkfile.
In order to shrink a log file if you run dbcc shrinkfile after mentioning the number it will succeed even though if it has not shrunk your file.
in order to shrink log file active portion of lsn have to become inactive, this can be done by taking a full backup if simple mode or transaction log backup if in full\bulk recovery mode, once this is done, there is free space available in transaction log file. now this free space can be released to OS with dbcc shrinkfile.
January 22, 2010 at 12:42 pm
Please read through this - Managing Transaction Logs[/url]
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
January 22, 2010 at 1:12 pm
I have found that sometimes a log file in simple mode will shrink without a backup and sometimes it will not. It usually works for me to do the following
1. shrink the log file
2. run a Backup Trans log WITH TRUNCATE_ONLY
3. shrink the log file again
This usually gives the space back
TJP8
January 22, 2010 at 1:24 pm
There is an active transaction and is still opened before completion of backup. For this reason it cann't make these transactions inactive.
January 30, 2010 at 5:30 pm
thank you for the help guys. Also the article was informative
January 31, 2010 at 10:14 am
tjp8 (1/22/2010)
I have found that sometimes a log file in simple mode will shrink without a backup and sometimes it will not. It usually works for me to do the following1. shrink the log file
2. run a Backup Trans log WITH TRUNCATE_ONLY
3. shrink the log file again
This usually gives the space back
TJP8
You really need to forget that command. Using that command to truncate the transaction log breaks the log chain (when in full or bulk-logged recovery model). When in simple mode - it just performs a checkpoint operation.
The preferred method of shrinking a log file is to perform regular scheduled transaction log backups, monitor the usage and when the VLF's that are being used have rolled over to the beginning of the log file then you can shrink the file.
Now, the real question is why do you need to shrink the file? Only when you have an unusual event that is not ever going to occur again (for example: a data load when building the system). Once the log file has stabilized at a size you really should leave it alone.
Jeffrey Williams
“We are all faced with a series of great opportunities brilliantly disguised as impossible situations.”
― Charles R. Swindoll
How to post questions to get better answers faster
Managing Transaction Logs
Viewing 7 posts - 1 through 6 (of 6 total)
You must be logged in to reply to this topic. Login to reply