2010-04-20 62 views
2

让我从任何方式开始说我不是SQL或SQL Server专家。我知道如何创建一个数据库并开发一个使用它的网站。除此之外,db管理完全失去了我:(SQL Server 2005数据库日志文件很大,完整

被说我卡住了我的两个数据库的日志文件增长得非常大,一个是650MB,另一个是16 GB的技嘉!在这两个数据库中的数据都小于10MB,所以我无法想象这是怎么发生在这个好神...

我做了一些研究,这导致我相信做一个完整的数据库备份或事务日志备份将修复此...

试图做一个完整的数据库备份我收到一个错误,告诉我事务日志已满,所以我尝试了日志备份,而不是

工作,现在如果我做一个完整的数据库备份,我不会再得到那个错误。

但是,数据库日志文件的大小仍然与以前相同。

我也进入了收缩也说650mb左右的空间是自由空间,但当我告诉它释放空间它什么也没做。我没有收到任何错误信息,它只是关闭,什么也没做。至少我相信它没有做什么,因为我的日志文件仍然是gimongous ...

因此,首先,这是怎么发生的?我所做的只是打开我的数据库,在这里和那里改变列。而在另一个数据库上,我甚至没有这样做!

最后,我该如何解决这个问题,以便我可以清除该日志?

任何帮助表示赞赏,谢谢!

+0

它的工作第二我发布了这个。我再次缩小了日志文件,这一次它工作...但我仍然想知道为什么日志文件变得这么滑稽...... – SelAromDotNet 2010-04-20 21:07:25

回答

3

除非您需要及时恢复或需要频繁备份,否则听起来您可以不使用日志文件。更改为简单恢复模式。这将导致日志在每次提交事务后被截断,而不是等待日志文件备份。

+1

这听起来很理想,我经常手动备份。如何更改为简单恢复模式? oop没关系我在数据库属性中找到它。希望这个伎俩,谢谢! – SelAromDotNet 2010-04-20 21:12:11

2
USE MyDatabase 
GO 
Backup Log MyDatabase WITH TRUNCATE_ONLY 
GO 
DBCC SHRINKFILE (MyDatabase_Log, 1) 
GO 

注意,这将无效的备份历史记录,因此使用TRUNCATE_ONLY后必须执行完整备份。

相关问题