Solved

SQL 2012 database log file too big, no disk space

Posted on 2016-08-17
11
45 Views
Last Modified: 2016-08-26
Dear all,

I have MS SQL 2012 server and the transaction log file has grown too big and the partition where the log file resides is out of space. Unable to run queries due to this issue. Any help on what best to do in this scenario would be appreciated.

Dee
0
Comment
Question by:ghco
  • 3
  • 3
  • 2
  • +3
11 Comments
 
LVL 46

Expert Comment

by:Vitor Montalvão
ID: 41759095
Are you performing transaction log backups? If you weren't then that explains the transaction log being growing without any kind of truncation.
So to solve your issue you'll need to perform ASAP a transaction log backup and then schedule regular transaction log backups.
0
 
LVL 25

Expert Comment

by:Lee Savidge
ID: 41759099
First of all why has this happened? Is the recovery model set to full or simple? If set to full, you MUST back up the database AND transaction log as part of your maintenance schedule.

If you don't your log file will simply increase until it runs out of disk space. This is perhaps the single most common problem that people face with a database.

So, what can you do? Well, if the disk is full, the application is not working, so try and do a database back up and then a transaction log backup to a different partition. Then when you've backed the transaction log up, you will need to shrink it.

https://msdn.microsoft.com/en-GB/library/ms189493.aspx

Try that, then come back to let us know if it has worked. There are things you can do if it doesn't work so don't worry.
0
 

Author Comment

by:ghco
ID: 41759144
Thanks for the quick respond, the recovery model is set to simple. Will try what you suggested and let you know the outcome.

As an alternative can the log file be moved to another partition while the database is active?
0
 
LVL 46

Expert Comment

by:Vitor Montalvão
ID: 41759148
If the database is set to Simple then you can't perform transaction log backups. I'm wondering what can made the transaction log growing too much in a Simple Recovery model database. How big is the database and the transaction log file?

For moving a transaction log location you'll need to detach the database, copy the transaction log file to the new location and re attach the database.
0
 

Author Comment

by:ghco
ID: 41759159
The database grew from 3GB to 40GB and the log file is 45GB. Apparently there was a massive entry to database table that wasn't necessary which made it grew, have tried deleting those entries but script wouldn't run because of the disk space issue.
0
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 
LVL 46

Expert Comment

by:Vitor Montalvão
ID: 41759166
A massive data task can really justifies the grow but then it would empty the transaction log when the task is done. Mind that emptying the tlog is not the same that shrinking it so it may be your case. Did you try to Shrink the transaction log to see if you can recall any free space? If not then it means that the transaction it still active (still running or waiting for a commit/rollback).
0
 
LVL 26

Expert Comment

by:Zberteoc
ID: 41759429
Use this script to shrink the log file:
USE [YourDatabase] 

ALTER DATABASE [YourDatabase] SET RECOVERY SIMPLE WITH NO_WAIT 

DBCC SHRINKFILE(N'YourDatabase_log', 1) 

Open in new window

where YourDatabase_log should be the logica file name of the transaction log file.
0
 
LVL 69

Expert Comment

by:ScottPletcher
ID: 41759485
Yes, use commands, not the gui, to shrink the log file.

USE [db_name]
DBCC SHRINKFILE(2, 4096)

That will shrink it to 4GB.  I wouldn't shrink too small, because when the log is forced to grow again, that will be very bad for performance.

Also, check to be sure that nothing is preventing the log from shrinking/being reused, with this command:

DBCC OPENTRAN
0
 

Author Comment

by:ghco
ID: 41762063
Found an MSDN link that shows how to shrink the database/log file from the SQL Management Studio so this worked for us. Thanks for all the help.

https://msdn.microsoft.com/en-GB/library/ms190757.aspx
0
 
LVL 26

Accepted Solution

by:
Zberteoc earned 500 total points
ID: 41762577
In that article under "Using Transact-SQL" section is exactly what I posted as a solution at: 41759429
0
 
LVL 7

Expert Comment

by:Jason clark
ID: 41763385
By querying the sys.databases catalog view you can see information describing the reason your log file may be waiting on truncate/reuse. see here to know other reasons for that: http://www.sqlmvp.org/transaction-log-is-too-big-or-growing-unexpectedly/
0

Featured Post

Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When you hear the word proxy, you may become apprehensive. This article will help you to understand Proxy and when it is useful. Let's talk Proxy for SQL Server. (Not in terms of Internet access.) Typically, you'll run into this type of problem w…
For both online and offline retail, the cross-channel business is the most recent pattern in the B2C trade space.
Via a live example, show how to extract insert data into a SQL Server database table using the Import/Export option and Bulk Insert.
Via a live example, show how to shrink a transaction log file down to a reasonable size.

914 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now