SQLServer2008日志收缩
1、使用DBMS收缩
1、收缩日志前需要先将数据库的恢复模式修改为简单模式,选中需要收缩日志的数据库,右键,点击属性(如图1)。

2、在数据库属性菜单中,点击“选项”,将恢复模式修改为"简单"后,然后点击确认。将数据库恢复模式修改为简单模式后(如图2),即可进行日志收缩操作。点击“文件”选项,可以看到日志文件大小(如图3),图中的日志大小是17G.....


3、修改恢复模式后,右键数据库,依次选择"任务--收缩--文件"(如图5)。进入收缩日志操作页面(如图5),文件类型选择"日志",收缩操作选择“在释放未使用的空间前重新组织页”,同时填写收缩文件的大小。然后点击确定。收缩日志完成!收缩完成后需要将恢复模式修改回原来的值!!


4、可以再次点击数据库属性,查看日志文件的大小是否收缩到指定大小。本例中收缩为1M,结果如图6,收缩成功!

2、使用SQL语句收缩
use master
go
--修改需要收缩的数据库恢复模式
alter database dw set recovery simple with no_wait
go
alter database dw set recovery simple --把恢复模式设置为简单模式
go
use dw
--当前数据库日记的逻辑名列表
select name,* from sys.database_files where type=1
--1代表是日记文件
go
--把DW_log日记文件收缩到5M
--日志名可以查看数据库属性看到,如图3
dbcc SHRINKFILE(N'DW_log',5)
--减小 DW 用户数据库中数据文件和日志文件的大小,以便在数据库中留出 10% 的可用空间。
dbcc SHRINKDATABASE(N'DW',10)
go
use master
go
--收缩日志后恢复数据库恢复模式
alter database dw set recovery full with no_wait
go
--恢复模式还原为完全模式
alter database dw set recovery full
go
如果出现收缩后日志文件大小不变的情况,可以参照下这篇文章。解决SQLServer 2008 日志无法收缩,收缩后大小不改变
作者:sky_47
链接:https://www.jianshu.com/p/547b7b74317d
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2018-04-16 C# Excel导入、导出【源码下载】
2018-04-16 微信支付服务器CA证书更换服务器安装der证书的方法 DigiCert的根证书
2018-04-16 重置winsock目录解决不能上网的问题
2015-04-16 XmlNode中Value和InnerText的区别
2015-04-16 C#用xpath查找某节点