2013-01-23 28 views
0

我有一个SQL服务器数据库大小1677,25 MB。这里是我的详细DB大小信息:如何优化Sql Server数据库与巨大的日志文件

DB面积:1677.25 MB
未分配的空间:343.09 MB

保留:24488 KB 数据:18560 KB 指数大小:2632 KB 未使用:3296 KB 行计数:74410

所以,你可以看到它不是那么大的数据库。问题是,日志。

日志文件的大小为:1.311 GB

我如何清理旧日志?好吧,也许最后3个月的重要,但1.3 GB是一个非常重要的尺寸。

+0

为什么你的日志文件这么大?你有没有完全恢复模式的数据库,但忘记安排定期的日志备份? –

回答

4

首先你需要明白,为什么你的日志文件是这么大。您可以使用此查询为:

SELECT name,log_reuse_wait_desc FROM sys.databases; 

有关日志文件的用途,以及如何解释结果这个查询,你可以在这里找到更多信息:

http://sqlity.net/en/556/t-sql-tuesday-25-%E2%80%93-sql-server-tips-tricks/

最有可能的原因是,数据库处于“FULL”恢复模式。这意味着SQL Server会保留所有日志记录,直到您创建日志备份。进行完整备份不会改变这一点。

执行日志备份后,SQL Server可以重新使用日志文件中的空间。此时,您还可以将日志文件缩小到更合适的大小。如果您不需要及时恢复,则可以将数据库切换为简单恢复。这样,只要SQL Server需要它们进行事务处理,它就会保留日志记录。

但是,正如上面的文章所解释的那样,还可能有其他原因导致您的问题,比如被遗忘的复制设置。如果您需要进一步的帮助,请发布上述查询的结果。