使用 SQL Management Studio 进行 WSUS 清理

使用 SQL Management Studio 进行 WSUS 清理

因此,我有一个上游 WSUS 服务器,它从未运行过清理向导。内容文件夹大约有 800GB,并且启用了许多不需要的产品类别,包括驱动程序。作为第一步,我禁用了不需要的类别并进行了同步。然后我尝试运行清理向导,它会运行,但不适用于选项Unused updates and update revisions。如果选中此选项,向导将几乎立即失败。 失败

目标是让清理向导踢出不需要的更新,以便内容文件夹缩小并且所有副本服务器不会有那么多的负载。

为此,我关注本指南

有一个部分HELP! My WSUS has been running for years without ever having maintenance done and the cleanup wizard keeps timing out.

确保您有 SUSDB 的备份,然后运行重新索引。完成后,在 SQL Server Management Studio 或 SQL Server Management Studio Express 中运行以下存储过程。完成后,按照上述所有说明运行维护。最后一步是必要的,因为此处的存储过程仅删除未使用的更新和更新修订。

迄今已完成

  • 重新索引数据库
  • 使用 SQL Server Management Studio 登录 WSUS
  • 拒绝使用指南中提供的脚本取代更新
  • 确定数据库中存在此查询的过时更新数量EXEC spGetObsoleteUpdatesToCleanup

不工作

有一个 SQL 脚本可以批量删除所有不需要的更新。作为第一步,我尝试从表中删除单个更新,spGetObsoleteUpdatesToCleanup如下所示:

exec spDeleteUpdate @localUpdateID=224734

这会出现以下错误

Msg 50000, Level 16, State 1, Procedure spDeleteRevision, Line 33 [Batch Start Line 0]
@errorMessage
Msg 50000, Level 16, State 1, Procedure spDeleteUpdate, Line 72 [Batch Start Line 0]
spDeleteUpdate got error from spDeleteRevision

批量删除的 SQL 脚本也会因此错误而失败。

我如何才能让 SQL 脚本批量删除不需要的更新,以便最终运行清理向导?

另外:拒绝更新的次数不应该与更新的次数相对应吗spGetObsoleteUpdatesToCleanup

其他资源:

相关内容