Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2005 Forums
 SQL Server Administration (2005)
 Shrink log file

Author  Topic 

pkkalra
Starting Member

5 Posts

Posted - 2014-03-24 : 00:27:47
I am trying to shrink the log file which has grown to 21 GB. I can see that only 25% of it is being used and rest is free space sitting there. I wanted to reclaim this space.
Our recovery model is FULL and cannot be changed to SIMPLE as it is being synchronized to a backup server.

I have tried the following:-
Taken full backup, transaction log backup and then doing shrink log file. I am mainly doing it via SSMS (Management studio) as I am not an expert in DBA stuff ( I am a developer).

File size is same and not reduced at all.

jackv
Master Smack Fu Yak Hacker

2179 Posts

Posted - 2014-03-24 : 02:48:29
To decrease the transaction log file size - use the ALTER DATABASE ... MODIFY FILE option , use these instructions - http://www.sqlserver-dba.com/2013/02/modify-sql-transaction-log-file-size-increase-or-decrease.html

Jack Vamvas
--------------------
http://www.sqlserver-dba.com
Go to Top of Page

pkkalra
Starting Member

5 Posts

Posted - 2014-03-27 : 01:27:02
ALTER DATABASE [DB] MODIFY FILE command didn't work. It seems like you can increase it but can't reduce it.

Error:
MODIFY FILE failed. Specified size is less than current size.

ALTER DATABASE Docprep MODIFY FILE (NAME = Docprep_log, SIZE = 1000MB)
Go to Top of Page

pkkalra
Starting Member

5 Posts

Posted - 2014-03-27 : 01:59:03
Finally resolved by following instruction from another forum. Basically you have to do twice in a row.

1. Make sure no open connections - DBCC OPENTRAN
2. Take Full backup
3. Take Transaction log backup with truncate
4. Shrink log file using DBCC SHRINKFILE
5. Repeat 3 & 4 again.

Voila! Log file is 10 MB now.
Go to Top of Page

jackv
Master Smack Fu Yak Hacker

2179 Posts

Posted - 2014-04-01 : 01:49:01
In the link I sent you there is a clear reference to first commit a shrinkfile , in step 3 , before you commit the ALTER DATABASE statement

If you attempt a ALTER DATABASE with MODIFY FILE you'll get this error

Msg 5039, Level 16, State 1, Line 1

MODIFY FILE failed. Specified size is less than or equal to current size.

To decrease the transaction log file size log , truncation must occur to free disk space. To reduce the log file physical size shrink to eliminate incative virtual log files
-- check there are no active transactions
USE sizetest
GO
dbcc shrinkfile(sizetest_log,TRUNCATEONLY)
GO
ALTER DATABASE sizetest
MODIFY FILE
(NAME = sizetest_log,
SIZE = 1MB);
GO






Jack Vamvas
--------------------
http://www.sqlserver-dba.com
Go to Top of Page
   

- Advertisement -