Microsoft SQL Server 2005收缩日志文件结果?

目前SQL Server 2005正在运行一个大小为8,9GB的数据库。 日志文件大小为20.1GB,硬盘快速填满。

现在我知道我可以收缩日志文件。 但我无法find任何结果是什么做的答案。 这是一个数据库女巫饲料生产环境的应用程序,所以如果任何事情被打破,我们有一个问题。

我们运行数据库的每日备份。

所以基本上,当我闪烁日志文件时会发生什么,我不会丢失任何生产数据。 但我仍然有这样的感觉,当我运行查询时,我打破了一些事情:

DBCC SHRINKFILE('<Logfile_name>', 1) BACKUP LOG <Database_name> WITH TRUNCATE_ONLY DBCC SHRINKFILE('<Logfile_name>', 1) GO 

日志正在增长,因为没有被备份。 您所做的完整数据库备份不算 ,它们不备份日志。 除了完整的数据库备份之外,您还必须定期备份日志,否则它将继续增长。 添加一个作业,每30分钟将日志备份到维护计划。

或者,将数据库的恢复模式更改为SIMPLE。

在备份日志或更改恢复模式之前,不仅会继续增长,而且会被标记为在使用中不会缩小。

据我所知,事务日志是自上次备份以来发生的一切。 所以在你被允许缩小之前,你需要执行备份。 由于这听起来像你没有一个真正的DBA,我build议使用完整备份。

我的DBA每周运行一次日志收缩,作为一个预定的工作。

收缩日志文件时,您正在有效地移除发生的事务。 因此,如果数据库出现故障,需要从事务日志中恢复,则必须恢复备份的日志文件,然后使用该日志文件开始数据检索。