You need to enable JavaScript to run this app.
文档中心
云数据库 SQL Server 版

云数据库 SQL Server 版

复制全文
下载 pdf
常见问题
如何收缩云数据库 SQL Server 版的事务日志?
复制全文
下载 pdf
如何收缩云数据库 SQL Server 版的事务日志?
本文介绍收缩事务日志的操作步骤。​
背景信息​
什么是事务日志?​
事务日志是数据库管理系统中的关键组件,核心功能为记录所有事务操作以实现数据恢复。 通过详细记录事务对数据库的增、删、改等操作,在系统故障时支持回滚未提交事务或重做已提交事务,确保数据库一致性。​
收缩事务日志的底层逻辑?​
收缩事务日志文件可释放未分配的空间,进而缩减其占用的存储空间。这一操作的本质是删除不包含逻辑日志内容的虚拟日志文件,即不活动的虚拟日志文件。在收缩过程中,会从日志文件的末尾开始,移除不活动虚拟日志文件,以便将日志减小到所要求的大小。​
适用场景​
当事务日志文件因意外原因(如执行超大事务、重建索引等导致日志文件短时间内暴涨)占用大量磁盘空间,进而引发磁盘告警、可用空间不足时,可临时使用收缩功能来缓解。​
前提条件​
注意事项​
SQL Server Management Studio(SSMS)仅支持在 Windows 操作系统中安装。​
操作步骤​
说明​
SQL Server Management Studio(SSMS)默认为英文环境,为便于操作,建议将英文环境修改为中文环境,详情请参考如何修改 SQL Server 的语言环境?以下操作步骤以中文环境为例:​
  1. 在 ECS 或本地设备上启动 SQL Server Management Studio 客户端,并连接实例。​
  1. 有以下两种方式收缩事务日志:​
  • 方法一:通过图形化操作收缩事务日志。​
  1. 在 SSMS 中,右键单击目标数据库,选择任务 > 收缩 > 文件,单击文件。​
  • ​​​
  1. 进入收缩文件页面,进行以下设置:​
  • 在数据库文件和文件组区域,单击文件类型下拉列表,选择日志。​
  • 在收缩操作区域,单击释放未使用空间。​
  • ​​​
  1. 单击下方确认按钮,以完成收缩事务日志操作。​
  • ​​​
  • 方法二:通过脚本收缩事务日志。​
  1. 单击新建查询,以新建一个查询窗口。​
  • ​​​
  1. 以收缩 testDB 的事务日志为例:​
  • testDB 为数据库名。​
  • testDB_log 为对应的事务日志名。​
  • 您在使用以下 SQL 语句时,需将以下数据库名、事务日志名替换成您的目标数据库及事务日志名。SQL 语句如下:​
  • ​
    USE [testDB] ​
    GO​
    DBCC SHRINKFILE (N'testDB_log' , 0, TRUNCATEONLY)​
    GO​
    ​
  1. 单击执行,以完成收缩事务日志操作。​
  • ​​​
  1. 查看收缩事务日志后的可用空间,可右键单击目标数据库,选择任务 > 收缩 > 文件,单击文件。​
  • ​​​
  • ​​​
最近更新时间:2026.10.23 18:30:41
这个页面对您有帮助吗?
有用
有用
无用
无用