这个操作很简单,但是有一个小坑,这是转载其他人的文章。
Sql Server 日志 _log.ldf文件太大,数据库文件有500g,日志文件也达到了500g,占用磁盘空间过大,且可能影响程序性能,需要压缩日志文件,下面小编给大家讲解下Sql Server 压缩数据库日志文件的方法,感兴趣的朋友一起看看吧
Sql Server 日志 _log.ldf文件太大,数据库文件有500g,日志文件也达到了500g,占用磁盘空间过大,且可能影响程序性能,需要压缩日志文件。
压缩日志脚本里要填的名字从要压缩的数据库属性里查看

脚本文件
use [master]
go
alter database [dbname] set recovery simple with no_wait
go
alter database [dbname] set recovery simple
go
use [dbname]
go
dbcc shrinkfile (N'dblogname',11,truncateonly)
go
use [master]
go
alter database [dbname] set recovery full with no_wait
go
alter database [dbname] set recovery full
go
可以将该脚本直接放到查询窗口,一起执行
(大致等个一分钟左右),脚本执行完,选择数据库,选择任务-》收缩-》文件

文件类型选择日志,脚本执行完后,日志文件仍然还是很大,但是可用空间内,显示的内存比较大,可压缩未释放空间
这个小坑就是位置,在工作中有时候用的是远程连接,不是本地连接的数据库,这个收缩后的保存位置,如果是远程的那就去远程的电脑找,本地的话按位置直接找就行。

压缩后,日志文件缩小到300mb。
收缩命令:
-- 将数据库恢复模式更改为简单
ALTER DATABASE [ZiDanDataBase]
SET RECOVERY SIMPLE;
GO
-- 收缩日志到1G
DBCC SHRINKFILE (N'ZhiDan_log', 1024);
GO
-- 将数据库恢复模式更改为完整
ALTER DATABASE [ZiDanDataBase]
SET RECOVERY FULL;
GO
文章介绍了当SqlServer的日志文件(_log.ldf)过大,影响性能时,如何使用脚本进行压缩。过程包括设置恢复模式为简单,收缩文件,然后切换回完整恢复模式。压缩后,日志文件从500GB减至300MB。注意,如果使用远程连接,压缩后的文件需在远程计算机上查找。
319

被折叠的 条评论
为什么被折叠?



