SQL Server 日志收缩的两种方法
王递杰 2025年1月24日 SQL
本文介绍日志收缩的两种方法。
第一种:通过图形界面进行日志收缩
1:右键数据库属性

2:点击左侧选项,更改数据库恢复模式,将模式改为简单。

3:右键数据库,依次:任务→收缩→文件。

文件类型选择_日志_,并在【收缩操作】中将文件收缩到给出的_最小_值,这里的数据库因为是新建的没有数据,所以提供的_最小_值为0MB,可以将红框3中的数字修改为自己想要收缩到的大小。

4:还原步骤二中恢复模式,将模式还改为完整。

第二种:通过T-SQL脚本进行日志收缩
执行如下命令:
USE [数据库名]
GO
ALTER DATABASE [数据库名] SET RECOVERY SIMPLE WITH NO_WAIT
GO
--设为简单模式
ALTER DATABASE [数据库名] SET RECOVERY SIMPLE
GO
USE [数据库名]
GO
DBCC SHRINKFILE (N'[log文件名]', [ targetsize], TRUNCATEONLY)
GO
USE [数据库名]
GO
ALTER DATABASE [数据库名] SET RECOVERY FULL WITH NO_WAIT
GO
--还原为完全模式
ALTER DATABASE [数据库名] SET RECOVERY FULL
GO
[数据库名]替换为具体数据库, [ targetsize]替换为收缩目标值。
本例脚本参考:
USE MyTestDB
GO
ALTER DATABASE MyTestDB SET RECOVERY SIMPLE WITH NO_WAIT
GO
--设为简单模式
ALTER DATABASE MyTestDB SET RECOVERY SIMPLE
GO
USE MyTestDB
GO
DBCC SHRINKFILE (N'MyTestDB_log', 100, TRUNCATEONLY)
GO
USE MyTestDB
GO
ALTER DATABASE MyTestDB SET RECOVERY FULL WITH NO_WAIT
GO
--还原为完全模式
ALTER DATABASE MyTestDB SET RECOVERY FULL
GO
相关博客
评论
暂无评论
推荐阅读
随笔分类
随笔归档
Powered by .NET 6.0 陕ICP备2020018176号-4