应用 KB 2677070中讨论的更新后,无法启动 SQL Server Reporting Services

本文可帮助你解决超时错误,以及启动 SQL Server Reporting Services(SSRS)时记录事件 ID 7000、7009 和 1530 的问题。

原始产品版本:SQL Server
原始 KB 数: 2745448

现象

假设在运行 SSRS 的计算机上应用Microsoft知识库(KB)一文中所述的更新2677070。 尝试启动 SSRS 时,会收到超时错误,并在应用程序日志中记录事件 ID 7000 和事件 ID 7009。

此外,记录事件 ID 1530,并在应用程序日志中记录类似于以下内容的信息:

注意

占位符 <事件时间> 表示事件发生的时间。 占位符 <SSRS 服务器名称> 表示 SSRS 服务器名称。

原因

出现此问题的原因是无法检索受信任和不受信任的证书信任列表(CCL)。 如果系统无法访问Windows 更新,要么是因为系统未连接到 Internet,或者因为防火墙规则阻止了Windows 更新,则网络检索会超时,然后服务才能继续其启动过程。 在某些情况下,此网络检索超时可能会超过服务启动超时 30 秒。 如果服务无法报告在 30 秒后完成的启动,服务控制管理器(SCM)将停止该服务。

更新 CTL 时更改的 URL。 因此,如果以前的 URL 在防火墙或代理中硬编码为例外,或者计算机上没有 Internet 访问,则无法更新 CTL。

若要下载最新的 CCL,请使用以下更新的 URL:

解决方法

若要解决此问题,请配置计算机,使网络不会检索受信任和不受信任的 CCL。 为此,请使用下列方法之一:

  • 方法 1

    验证边界防火墙、路由器访问规则或下游代理服务器是否允许安装了更新2677070的系统联系Microsoft更新。 有关此要求的详细信息,请参阅:已吊销证书的自动更新程序适用于 Windows Vista、Windows Server 2008、Windows 7 和 Windows Server 2008 R2 (这包括 CTL 更新访问的 URL)。

  • 方法 2

    更改组策略设置。 为此,请按照下列步骤进行操作:

    1. “本地组策略编辑器”中的“计算机配置 ”节点下,双击“ 策略”。
    2. 双击 Windows 设置,双击 “安全设置”,然后双击“ 公钥策略”。
    3. 在详细信息窗格中,双击“ 证书路径验证设置”。
    4. 选择“网络检索”选项卡,单击以选中“定义这些策略设置”复选框,然后单击清除“Microsoft根证书计划”(建议)复选框中的“自动更新证书”。
    5. 选择“确定,然后关闭“本地组策略编辑器”。
  • 方法 3

    修改注册表。 要设置部门,请按照以下步骤操作。

    重要

    此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,按以下步骤操作时请务必谨慎。 作为额外保护措施,请在修改注册表之前先将其备份。 如果之后出现问题,您就可以还原注册表。 有关如何备份和还原注册表的详细信息,请参阅:如何备份和还原 Windows 中的注册表

    1. 选择“开始”,选择“运行“打开”框中键入 regedit,然后单击“确定”。

    2. 找到并选择以下注册表子项:

      HKLM\Software\Policies\Microsoft\SystemCertificates

    3. 右键单击 AuthRoot,选择“新建”,然后单击“DWORD”。

    4. 键入 DisableRootAutoUpdate,然后按 Enter。

    5. 右键单击 DisableRootAutoUpdate,然后单击“ 修改”。

    6. 在“数值数据”框中,键入 1,然后单击“确定”。

    7. “文件” 菜单中,单击 “退出”

  • 方法 4

    增加默认服务超时。

    重要

    此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,按以下步骤操作时请务必谨慎。 作为额外保护措施,请在修改注册表之前先将其备份。 如果之后出现问题,您就可以还原注册表。 有关如何备份和还原注册表的详细信息,请参阅:如何备份和还原 Windows 中的注册表

    若要增加默认服务超时,请执行以下步骤:

    1. 单击“开始”,单击“运行“打开”框中键入 regedit,然后单击“确定”。

    2. 找到并选择以下注册表子项: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control

    3. 右键单击 “控件”,指向 “新建”,然后单击“ DWORD”。

    4. “新建值 ”框中,键入 ServicesPipeTimeout,然后按 Enter。

    5. 右键单击 ServicesPipeTimeout,然后单击“修改”

    6. 单击“十进制,键入要等待的毫秒数,直到服务超时,然后单击“确定”。 例如,若要在服务超时前等待 60 秒,请键入 60000。

    7. “文件”菜单上,单击“退出,然后重新启动计算机。

详细信息

有关 Windows 根证书程序、证书、证书信任和证书信任列表的详细信息,请参阅 Microsoft 知识库中文章的“详细信息”部分:an-automatic-updater-of-untrusted-certificates-is-available-for-window