Saturday, January 14, 2012

Truncate and Shrink SharePoint Transaction Logs, Databases

Some of the Transaction Logs and databases grown rapidly and on urgent basis I had to truncate the Log files on SharePoint Content Databases. Here is the SQL script to truncate and shrink SharePoint transaction log:

USE <Database_Name>
GO

BACKUP LOG <Database_Name> WITH TRUNCATE_ONLY

DBCC SHRINKFILE(<Transaction_Log_Name>, 1)
GO

After executing the SQL script to truncate transaction log in my SharePoint 2010, it recovered me considerable space now!

Alternatively, You can set the recovery model to "SIMPLE" temporarily, Shrink the Log file and set back to "FULL" recovery model
Use <database_name>
GO

ALTER DATABASE <database_name> SET RECOVERY SIMPLE
GO

DBCC SHRINKFILE (Database_Log_Name, 1); 
GO

ALTER DATABASE <database_name> SET RECOVERY FULL
GO
Important: Please note the <database_Name> and <database_log_Name> in above examples are logical names.

Shrink SQL Server Database, Log Files from SSMS:
Shrinking can be done from SQL Server Management Studio also.
Go to SSMS >> Right click the target Database >> Tasks >> Shrink >> Files (or Database)
truncate sharepoint database log
Select the File Type and click on "OK" button to start shrinking. Here I've selected "Log" File type to shrink SharePoint transaction log files.
shrink sharepoint content database log
Same applies when you want to shrink SharePoint database size. I find it useful when I had to shrink SharePoint search databases.

How about removing the existing Log file and create a new one?
I had SharePoint Content database log file of 30GB! So, wanted to remove the existing log and create a new one. Simply add a new log file and remove the existing one from SSMS. Or you can:
  1.     Detach the database
  2.     Rename the log file
  3.     Attach the database without the log file
  4.     Delete the old log file



You might also like:
SharePoint Usage Reports
Usage reports, collaboration and audit for SharePoint.
Document SharePoint Farm
Automatically generate SharePoint documentation.
*Sponsored


Check out these SharePoint products:

5 comments :

  1. Hello! Very nice blog - I will be checking out your other posts soon.

    On the Shrink Log File, is there any "damage" that can be done just by shrinking the log? Should the content DB be backed up first?

    Also, if on SQL Server 2008 R2, and compatibility is 2005, is there any harm in raising the compatibility? This database is not going to be used in a 2005 environment.

    Thanks!

    ReplyDelete
    Replies
    1. 1. Shrinking the log is actually clears inactive part of the log, which consists of list of operations that have been performed and used as a reference for restores, rollbacks,checkpoints, etc. Shrinking the log does not loose any uncommitted log data!

      2. Database compatibility level mostly affects SQL syntax and query parsing, and it should have no impact on performance; anyway, consider it as a best practice.

      Delete
  2. Remember to backup your database after you have done the following.:
    Alternatively, You can set the recovery model to "SIMPLE" temporarily, Shrink the Log file and set back to "FULL" recovery model

    https://technet.microsoft.com/en-us/library/ms178052(v=sql.105).aspx


    Read more: http://www.sharepointdiary.com/2012/01/truncate-transaction-logs-of-sharepoint.html#ixzz3dQQIV4tK

    ReplyDelete

Please Login and comment to get your questions answered!

You might also like:

Related Posts Plugin for WordPress, Blogger...