如果删除与.ldf
文件位于同一文件夹中的.mdf
文件会怎样?
答案 0 :(得分:19)
LDF文件是transaction log,是所有SQL Server配置所必需的。根据{{3}},将确定其使用方式。但是,所有查询基本上都存储在此处,直到成功提交到数据库(MDF)。
在SQL Server服务运行时,您将无法删除它。您可以分离数据库,删除日志文件(LDF)并重新附加数据文件(MDF)。但是它只会创建一个新的日志文件。你真的不需要删除它。如果它变得太大,您将需要管理它,通常是通过备份过程。
答案 1 :(得分:4)
数据库将在SQL Server重新启动时被标记为可疑,并且无法访问,而无需进行深入调整以恢复它。
LDF是数据库的重要组成部分:您需要此文件。
你当然可以忽略我们,删除它并亲自看看......
答案 2 :(得分:1)
正如已经指出的那样,.LDF文件对于数据库至关重要,如果没有数据库,数据库将无法使用。仅当数据库脱机或分离或SQL服务已停止时,才能删除.LDF。
假设上述3个场景中的一个是真的,并且您确实删除了.LDF文件,那么当SQL服务器重新启动时,DB将会怀疑。如果数据库处于脱机状态并且您尝试将其重新联机,则会出现错误:
File activation failure. The physical file name "<<filename.ldf>>" may be incorrect.
Msg 945, Level 14, State 2, Line 1
Database '<<DB Name>>' cannot be opened due to inaccessible files or insufficient
memory or disk space. See the SQL Server errorlog for details.
Msg 5069, Level 16, State 1, Line 1
ALTER DATABASE statement failed.
修复此错误非常简单,但您需要从系统文件中删除与数据库相关的所有元数据。最简单的方法是删除数据库。以下是您需要做的事情。
完成这些步骤后,请运行以下命令:
SP_ATTACH_SINGLE_FILE_DB @dbname='<<DBName>>'
,@physname=N'<<filepath\filename.MDF>>'
这应该返回以下内容:
File activation failure. The physical file name "<<Filepath\filename.ldf>>"
may be incorrect.
New log file '<<Filepath\filename.ldf>>' was created.
这会使您的数据库恢复到可用状态。
百万个问题仍然存在 - 为什么有人想要删除.LDF文件???
拉吉
答案 3 :(得分:0)
保持.LDF file
大小的最佳方法是: