2

首先让我说我无论如何都不是 SQL 或 SQL Server 专家。我知道如何创建数据库并开发使用它的网站。除此之外,我完全失去了数据库管理:(

话虽如此,我被困住了。我的两个数据库的日志文件变得非常大。一个是 650MB,另一个是 16 GB,这就是技嘉!这两个数据库中的数据都小于 10mb,所以我无法想象这是怎么发生的……

我对此进行了一些研究,这使我相信进行完整数据库备份或事务日志备份可以解决此问题...

尝试进行完整的数据库备份我收到一个错误,告诉我事务日志已满。所以我尝试了日志备份

那行得通,现在如果我进行完整的数据库备份,我将不再收到该错误。

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

我也进入了收缩,它说 650mb 左右的空间是可用空间,但是当我告诉它释放空间时,它什么也没做。我没有收到错误消息,它只是关闭并且什么也没做。至少我相信它什么也没做,因为我的日志文件仍然是巨大的......

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

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

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

4

2 回答 2

3

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

于 2010-04-20T21:07:53.237 回答
2
USE MyDatabase
GO
Backup Log MyDatabase WITH TRUNCATE_ONLY
GO
DBCC SHRINKFILE (MyDatabase_Log, 1)
GO

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

于 2010-04-20T21:06:51.173 回答