解决方案1 - 直接删除本地ldf日志文件:(比较靠谱方案!) 1. 在SQL管理器分离数据库。 2. 对数据库日志文件进行压缩备份(rar, zip) 3. 直接删除ldf文件。 4. 再附加数据库。若出现下图错误,选择日志文件记录(提示文件找不到),点下面的【按钮】删除!
![](/i/l/?n=22&i=blog/27422/202210/27422-20221015114905413-143166302.png)
附加数据库文件成后,查阅本地数据库文件,发现重新生成的日志文件为504KB。
解决方案2 - 收缩数据库日志文件 (最靠谱方案!) 分两步操作: step 1.操作步骤:在数据库右键 --> 数据库属性 --> 选项 --> 将数据库【恢复模式】修改为【简单】。 点确定按钮。
![](/i/l/?n=22&i=blog/27422/202210/27422-20221015115048248-120781903.png)
step 2.在数据库右键 --> 任务 --> 收缩 -->文件 -->文件类型选择【日志】 --> 将文件收缩到1MB。 点确定按钮。
![](/i/l/?n=22&i=blog/27422/202210/27422-20221015115058146-2001431287.png)
解决方案3 - 采用SQL脚本删除。 经测试,本地ldf文件有的变化有的没有发生任何变化!
--下面的所有库名都指你要处理的数据库的库名 --1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG --2.截断事务日志: BACKUP LOG 库名 WITH NO_LOG --3.收缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 --也可以用SQL语句来完成(注:根据我的实践,用企业管理器执行收缩操作后,ldf文件大小并没有发生变化,用下面的SQL指令就可以) --收缩数据库 DBCC SHRINKDATABASE(XQOMS) DBCC SHRINKDATABASE(XQOMS_System) --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles --select * from sysfiles DBCC SHRINKFILE(1) DBCC SHRINKFILE(2)
---------以防连接丢失而备用-^_^-
转载
本文来自博客园,作者:古道轻风,原文链接:https://www.cnblogs.com/88223100/p/Several-Methods-of-Clearing-SQL-Server-Database-Logs.html
标签:文件,Server20,--,收缩,数据库,SQL,日志 From: https://www.cnblogs.com/zqjb/p/17184417.html