SQL Server 清理 Log 磁盘的方法

yaowei's blog / 2023-07-19 / 原文

如果数据库的日志磁盘资源已满,Dynamics 365 F&O 将不会加载成功,即无法访问网站。

这时候便需要清理相应的Log盘,可使用如下SQL脚本进行清理:

-- 跳转到 AX 数据库
use [AxDB]

-- 查询得到数据库的所有文件
SELECT name FROM sys.database_files

-- 设置RECOVERY SIMPLE
USE [master]
GO
ALTER DATABASE [AxDB] SET RECOVERY SIMPLE WITH NO_WAIT
GO

-- 缩减相应Log文件的大小
USE [AxDB]
GO
DBCC SHRINKFILE (AxDB_Restore_log, 1024)
GO

-- 重新设置
USE [master]
GO
ALTER DATABASE [AxDB] SET RECOVERY FULL WITH NO_WAIT
GO