我有一个非常大的LDF文件:45GB ..对'只'1GB的mdf数据文件。 我的问题是:
将DBCC ShrinkFile用于日志文件(ldf)是否安全?
如何programmaticaly限制ldf文件的大小?
谢谢
简短的回答是“不,不build议收缩你的日志文件”
什么是解决scheme是运行数据库的完整备份,然后分离数据库,将日志文件重命名为类似database.ldf.old,然后重新附加数据库,而不指定日志文件的新位置。 这将创build一个新的空白日志文件。
确保日志文件不会过度增长的正确方法是定期备份事务日志。 这是除了执行常规的完整备份。 但是,这只适用于您的数据库正在使用完全恢复模式。 您可以通过右键单击Management Studio中的数据库,然后单击属性来find正在使用的模型。 导航到选项页面,在该屏幕上,您将看到整理types,恢复模式和兼容性级别。
除非您需要通过将事务日志重播到特定事务来恢复到任何时间点,否则使用简单恢复模式并确保通过执行完整备份来定期备份数据库将防止日志文件过度增长。 还build议您将日志文件放在一个单独的卷上(至less),以阻止日志文件阻止login到服务器(即,如果它位于启动分区上,并完全填满磁盘)
这取决于你的SQL数据库有多重要,在我们的例子中,我们正在做数据库备份,然后我们定期收缩日志文件,记住日志文件不会被缩小,
所以,先备份数据库,缩小数据库