System Center 2012 配置管理器中的软件更新维护

重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。

点击这里察看该文章的英文版: 3090526
概要
本文描述软件更新的维护过程,并提供了有关 Microsoft System Center 2012 配置管理器的管理员如何维护 WSUS 数据库最佳性能的建议。

注意:有关软件更新在 System Center 2012 配置管理器的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
3092358 软件更新故障诊断和维护在 System Center 2012 配置管理器
更多信息

过期的更新

作为正在进行的更新修订进程的一部分,Microsoft 更新目录中的某些更新被过期。这通常发生在没有可用的更新的较新版本。但是,在极少数情况下,Microsoft 可能会发现与更新问题,并因此使其过期。在软件更新同步,这些过期的更新标记为"已过期"配置管理器控制台中。此过期的状态由灰色的更新旁的图标指示。这些过期的更新会自动从配置管理器数据库定期清理。WSUS 同步管理器组件中删除过期的更新。只有在满足以下条件时,它执行此操作:
  • 更新分配中未引用更新。
  • 更新是早于"更新清理年龄"的值(默认情况下,此值是七天。)

在顶级的配置管理器站点的 WSUS 同步管理器将检查具有要删除的更新每隔一小时和上面列表中的条件匹配,它会移除过期的更新。当 WSUS 同步管理器删除过期的更新时,您可以查看 WSyncMgr.log 文件中的下列条目:

正在删除旧过期的更新...SMS_WSUS_SYNC_MANAGER 删除 100 过期的更新 SMS_WSUS_SYNC_MANAGER


已删除 2995年过期的更新总 SMS_WSUS_SYNC_MANAGER

清除内容

删除过期的更新,可能会变得孤立那些过期的更新的内容。WSUS 同步管理器还清理此孤立的内容。作为内容清理,WSUS 同步管理器分析软件包所拥有的当前站点,找到不再被引用,并从包源目录中删除该内容的内容。默认情况下,内容是多一天有被孤立的情况下,才被删除。

如果删除任何内容,则清理过程也会更新包,以便将更新的内容发送到分发点 (Dp)。当 WSUS 同步管理器中删除孤立的内容时,您可以查看 WSyncMgr.log 文件中的下列条目:

删除孤立的内容包 CS100006 (EPDefinitions) 从源<PackageSource>SMS_WSUS_SYNC_MANAGER
删除孤立的内容文件夹 \\<PackageSource>\51b6db15-6938-4b37-9fa8-caf513e13930...SMS_WSUS_SYNC_MANAGER
.
.
删除孤立的内容文件夹 \\<PackageSource>\526b6a85-a62c-4d54-bc0d-b3409223b0df...SMS_WSUS_SYNC_MANAGER
已删除 12 孤立内容程序包的文件夹中 CS100006 (EPDefinitions) SMS_WSUS_SYNC_MANAGER
刷新包 CS100006 (EPDefinitions) SMS_WSUS_SYNC_MANAGER</PackageSource></PackageSource></PackageSource>


有关清理过期的更新和内容的详细信息,请参阅以下文章:

WSUS 服务器维护

为了维护 WSUS 数据库的最佳性能,建议您 WSUS 清理向导任务定期运行 WSUS 数据库 (SUSDB),还重新编制索引所在的软件更新点角色配置管理器环境中每个 WSUS 计算机上的 WSUS 数据库。多级层次结构中运行 WSUS 清理向导操作时,应首先在 WSUS 链的最低层上运行清理过程,然后移到下一层运行清理向导任务。您应该继续上层次结构向上直到到达顶层 WSUS 计算机。您可以在同一层中的多台服务器上同时运行此 WSUS 维护例程。

虽然可以在任何 WSUS 计算机 SUSDB 上的任何顺序执行重建索引,但建议您运行清理,并通过第一次运行重新编制索引进程在 WSUS 的每台计算机上重建索引,然后运行清理向导任务。如果您调整的第一次通过重建索引 SUSDB 性能,清理向导任务将会更快地完成。

重建索引 WSUS 数据库 (SUSDB)

可以通过使用以下 Microsoft TechNet 资源中的脚本的 WSUS 数据库 (SUSDB) 重新索引:

如果在 Microsoft SQL Server 实例上安装 WSUS 数据库,使用 SQL Server 管理 Studio,连接到数据库服务器,并运行数据库维护脚本。

如果在 Windows 内部数据库上安装 WSUS 数据库,您可以使用 SQL Server 管理 Studio 明示或 sqlcmd 实用程序。

若要使用 SQL Server 管理 Studio 速成,请执行以下步骤:
  1. 开始 SQL Server 管理 Studio 速成,,然后连接到数据库服务器。
    • 对于 Windows Server 2012 或 Windows Server 2012 R2,为服务器名称,如下所示:
      \\.\pipe\MICROSOFT##WID\tsql\query
    • 对于较旧的操作系统,服务器名称将如下:
      \\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query
  2. 单击新建查询,数据库维护脚本中的内容粘贴到新的查询,然后单击执行
若要使用 sqlcmd 实用程序,请执行以下步骤:
  1. 通过使用管理员身份打开命令提示符。
  2. 运行以下命令,具体取决于您的操作系统之一:

    对于 Windows Server 2012 或 Windows Server 2012 R2:
    sqlcmd-S \\.\pipe\MICROSOFT##WID\tsql\query-i <scriptLocation>\WsusDBMaintenance.sql</scriptLocation>
    对较旧的操作系统:
    sqlcmd-S \\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query-i <scriptLocation>\WsusDBMaintenance.sql<b00> </b00> </scriptLocation>
有关详细信息,请参阅以下文章:

提示如果您不确定是否 WSUS 数据库是 SQL Server 或承载 Windows 内部数据库,检查 WSUS 服务器上的以下注册表项:
HKLM\Software\Microsoft\Update Services\Server\Setup\<SQLServerName>

如果您看到只有服务器名服务器 \ 实例,您使用 SQL Server。如果您看到它有一个##SSEE##WID的字符串的内容,Windows 内部数据库上安装 WSUS 数据库。

提示若要确定哪个版本的 SQL Server 管理 Studio 速成版安装,请遵循以下准则:
  • 对于 Windows Server 2012 或 Windows Server 2012 R2,请转到下面的文件夹,然后在记事本中打开最新的错误日志文件。
    C:\Windows\WID\Log
  • 对于 Windows Server 2008 R2 或早期版本,请转到下面的文件夹,然后在记事本中打开最新的错误日志文件。
    C:\Windows\SYSMSI\SSEE\MSSQL.2005\MSSQL\LOG
在该错误日志文件的最顶端,您会看到的版本号 (例如,9.00.4035.00 x 64)。若要查找版本号,请参阅以下文章:

使用的版本号或服务包级别搜索 Microsoft 下载中心获取 SQL Server 管理 Studio 速成。


运行 WSUS 服务器清理

可以从WSUS 控制台运行 WSUS 服务器清理向导 >选项。我们建议您在每月一次约运行 WSUS 维护。从未运行清理而 WSUS 计算机很长时间的生产中,它可以清理可能会超时并失败。如果发生这种情况,运行清理只未使用更新和更新的修订选中复选框。(这是顶部的复选框)。然后,等待该进程完成,然后运行 WSUS 服务器清理向导再次,但旁边的复选框中选择。请注意,这可能需要多个步骤才能完成清理过程。最后,运行清理与选择的所有选项。有关 WSUS 服务器清理向导的详细信息,请参阅以下文章:

清理被取代更新


当 WSUS 集成使用配置管理器中时,被取代的更新不能删除 WSUS 清理过程的限制。因此,我们建议您定期拒绝根据 WSUS 服务器上的任何不必要的更新。不必要的更新包括被取代的更新,产品的更新或分类,不存在中的客户端环境和过期的更新。可以手动拒绝在 WSUS 控制台中更新或使用下面的脚本。

注意:经常备份 WSUS 数据库 (SUSDB) 之前所做的任何更改,如下面所述的那些。

还要注意,deline 不需要的更新后,您应重新编制索引 SUSDB,然后运行 WSUS 服务器清理向导一次移去不需要相应地更新。这将是一部分的任何配置管理器软件更新组中删除更新。通过使用 ScriptA 清理 WSUS 示例脚本 将允许的 WSUS 环境中的被取代更新脚本递减。您可以找到示例脚本 此处.拒绝在顶级的 WSUS 实例,并将它们复制到配置为复制副本模式的下游 WSUS 实例必须更新。必须在独立模式下运行任何 WSUS 实例上运行的脚本。若要使用此脚本,必须将其重命名为"谢绝 SupersededUpdates.ps1"并为下面的说明,表示使用它。与以往一样,是一定要在实验室环境中测试此脚本,然后再部署在生产环境中的脚本。

有关脚本的注释
默认 WSUS 服务器端口是 80。但是,如果您有自定义 IIS 网站安装 WSUS,WSUS 时可能会使用不同的端口。您将需要确定 WSUS 正在使用哪些端口,然后将更改到该端口的下列示例中的-端口参数。

参数-DeclineLastLevelOnly拒绝仅这些更新替代任何其他更新。如果省略此参数,将拒绝被取代的任何更新。这使未被取代的更新保持状态,而不是"拒绝"。
运行脚本
  1. 使用-SkipDecline开关,可以查看在 WSUS 中有多少被取代的更新运行该脚本。例如,为某个测试针对运行 WSUS 服务器不带 SSL,您将使用下面的命令:

    拒绝-SupersededUpdates.ps1-UpdateServer 服务器名-端口 80-SkipDecline
  2. 您可以拒绝被取代更新并不会取代更新 (叶级更新):

    拒绝-SupersededUpdates.ps1-UpdateServer 服务器名-端口 80-DeclineLastLevelOnly
  3. 或者,您可以使用下面的命令可拒绝所有被取代的更新:

    拒绝-SupersededUpdates.ps1-UpdateServer 服务器名-UseSSL-端口 8080
从 WSUS 控制台清理 WSUS
如果需要或想要手动拒绝更新,可以直接从 WSUS 控制台来执行此操作。若要执行此操作,请按照下列步骤操作:
  1. 打开 Windows 更新服务 Microsoft 管理控制台 (MMC)。
  2. 选择视图中的所有更新。若要执行此操作,将显示器设置为显示状态的任何任何除已谢绝审批状态,然后单击刷新
  3. 显示取代列。要做到这一点,用鼠标右键单击列标题,然后选择取代
  4. 排序方式取代。为此,单击鼠标左键取代列。
  5. 选择并拒绝被取代的更新。
关于清理被取代更新的详细信息,请参阅以下文章:

ConfigMgr 2007 ConfigMgr 2012 R2

属性

文章 ID:3090526 - 上次审阅时间:09/15/2015 02:16:00 - 修订版本: 1.0

Microsoft System Center 2012 Configuration Manager, Microsoft System Center 2012 Configuration Manager Service Pack 1, Microsoft System Center 2012 Configuration Manager Service Pack 2, Microsoft System Center 2012 R2 Configuration Manager, Microsoft System Center 2012 R2 Configuration Manager Service Pack 1

  • kbexpertiseadvanced kbsurveynew kbhowto kbinfo kbmt KB3090526 KbMtzh
反馈