解决安装和升级问题 (Reporting Services)

使用本主题可以解决在安装或升级 Reporting Services 时遇到的问题。有关 Reporting Services 安装必备组件、日志和配置的详细信息,请参阅如何排除 Reporting Services 安装故障

本主题包含有关以下问题的信息:

  • 在升级操作系统后性能计数器不可见

  • 修复从 SQL Server 2000 Reporting Services 的失败升级时发生错误

  • 从 SQL Server 2005 升级后,未配置 ReportServerExternalURL 和 PassThroughCookies 配置属性

  • SQL Server 2000 Reporting Services 安装破坏了 SQL Server 2008 Reporting Services 的默认实例

  • 在运行 SQL Server 2008 Reporting Services 的计算机上,SQL Server 2005 Reporting Services 的默认实例安装失败

  • 从 SQL Server 2005 升级到 SQL Server 2008 后,使用 Windows 身份验证时发生 401-未经授权的错误

  • 在与 64 位实例的并行部署中,卸载 SQL Server 2008 Reporting Services 的 32 位实例破坏了 64 位实例

  • 在 2 月份 CTP 版本后安装 SSL 证书时,在从 SQL Server 2008 Reporting Services 的 2 月份 CTP 版本升级到更新版本期间出现错误消息

在升级操作系统后性能计数器不可见

如果将运行 Reporting Services 的计算机的操作系统升级到 Windows Vista、Windows Server 2008 或更高版本,则升级后不会设置 Reporting Services 性能计数器。

恢复 Reporting Services 性能计数器

  1. 删除以下注册表项:

    • HKLM\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service

    • HKLM\SYSTEM\CurrentControlSet\Services\MSRS 2008 Windows Service

  2. 打开命令窗口,然后在提示符下键入以下命令:

    • run<.NET 2.0 Framework 目录**>\InstallUtil.exe<报表服务器 Bin 目录>\ReportingServicesLibrary.dll**

      注意注意

      将 <.NET 2.0 Framework 目录> 替换为 .NET Framework 2.0 文件的物理路径,将 <报表服务器 Bin 目录> 替换为报表服务器 bin 文件的物理路径。

  3. 重新启动 Reporting Services 服务。

若要验证这些步骤是否有效,请打开 Web 浏览器,导航到报表管理器 URL 或报表服务器 URL。然后打开性能监视器以验证计数器是否正常工作。

返回页首

修复从 SQL Server 2000 Reporting Services 的失败升级时发生错误

如果从 SQL Server 2000 升级到 SQL Server 2008Reporting Services 失败,则可以运行“修复”并尝试修复该升级。但是,运行“修复”后,如果尝试访问 Reporting Services(例如打开报表管理器或尝试呈现报表),则可能会收到以下错误消息:

“报表服务器数据库的版本格式无效,或无法读取。已找到的版本为“C.0.6.54”,而所需的版本为“C.0.9.45”。(rsInvalidReportServerDatabase)”

若要解决此问题,必须向 Reporting Services 数据库中的 db_owner 角色添加 RSExecRole。

向 Reporting Services 数据库中的 db_owner 角色添加 RSExecRole

  1. 打开 SQL Server Management Studio 并与承载 ReportServer 和 ReportServerTempDB 数据库的数据库相连接。

  2. 在对象资源管理器中,展开以下节点:“数据库”ReportServer“安全性”“角色”“数据库角色”

  3. 右键单击 db_owner,然后单击**“属性”**。

  4. 在**“数据库角色属性”页上,单击“添加”**。

  5. 在**“选择数据库用户或角色”页上,键入 RSExecRole,然后单击“确定”**两次。

  6. 对 ReportServerTempDB,重复以上步骤。

  7. 重新启动报表服务器服务。可能需要重新启动服务两次。有关详细信息,请参阅启动和停止报表服务器服务

返回页首

从 SQL Server 2005 升级后,未配置 ReportServerExternalURL 和 PassThroughCookies 配置属性

从 SQL Server 2005 升级到 SQL Server 2008Reporting Services 时,升级过程未配置 ReportServerExternalURL 和 PassThroughCookies 配置属性。ReportServerExternalURL 是可选属性,仅当使用 SharePoint 2.0 Web 部件,并且希望用户能够检索报表并在新的浏览器窗口中打开该报表时,才应设置此属性。有关 ReportServerExternalURL 的详细信息,请参阅配置文件中的 URL (Reporting Services)。仅当使用自定义身份验证方法时,才需要 PassThroughCookies。有关 PassThroughCookies 的详细信息,请参阅允许报表管理器传递自定义身份验证 Cookie

注意注意

使用自定义身份验证时,建议您迁移安装而不是执行升级。有关迁移 Reporting Services 的详细信息,请参阅如何迁移 Reporting Services 安装

默认情况下,SQL Server 2008Reporting Services 配置中不存在这些属性。如果在 SQL Server 2005 中配置了这些属性且继续需要这些属性提供的功能,则在升级过程后,必须手动将它们添加到 RSReportServer.config 文件中。有关详细信息,请参阅如何修改 Reporting Services 配置文件

返回页首

SQL Server 2000 Reporting Services 安装破坏了 SQL Server 2008 Reporting Services 的默认实例

必须在同一台计算机上运行 SQL Server 2000Reporting Services 和 SQL Server 2008Reporting Services 时,请先安装 SQL Server 2000 实例。否则,安装 SQL Server 2000Reporting Services 时,将覆盖默认实例的 SQL Server 2008Reporting Services 服务条目,SQL Server 2008 实例将破坏。出现这种情况是因为 SQL Server 2000Reporting Services 仅作为默认实例安装,但安装过程没有检测到 SQL Server 2008Reporting Services 实例已在使用默认实例。如果尝试修复 SQL Server 2008 实例,SQL Server 2008 实例将得到修复,但 SQL Server 2000 实例将被破坏。

返回页首

在运行 SQL Server 2008 Reporting Services 的计算机上,SQL Server 2005 Reporting Services 的默认实例安装失败

如果试图在已运行 SQL Server 2008Reporting Services 实例的计算机上安装 SQL Server 2005Reporting Services 的默认实例,SQL Server 2005Reporting Services 实例的安装将失败,并显示以下错误消息:

“此计算机上已安装了同名实例。若要继续执行 SQL Server 安装程序,请提供唯一的实例名称。”

无论 SQL Server 2008Reporting Services 实例是默认实例还是命名实例,并且无论计算机上是否已存在该名称的 SQL Server 2008Reporting Services 实例,都会出现此问题。

若要解决此问题,可使用以下选项之一:

  • 如果必须将 SQL Server 2005Reporting Services 作为计算机上的默认实例运行,则必须先安装 SQL Server 2005Reporting Services 实例,再安装 SQL Server 2008Reporting Services 实例。

  • 如果不需要将 SQL Server 2005Reporting Services 实例作为默认实例,则可以在安装 SQL Server 2008Reporting Services 实例之后,将 SQL Server 2005Reporting Services 实例作为命名实例安装。

返回页首

从 SQL Server 2005 升级到 SQL Server 2008 后,使用 Windows 身份验证时发生 401-未经授权的错误

如果从 SQL Server 2005Reporting Services 升级到 SQL Server 2008Reporting Services,并对 Report Server 服务帐户使用 NTLM 身份验证和内置帐户,则在升级后访问报表服务器或报表管理器时,可能会遇到 401-未经授权的错误。

出现这种情况是因为 Windows 身份验证的默认 SQL Server 2008Reporting Services 配置发生了更改。当报表服务器服务帐户是 Network Service 或 Local System 时,会配置 Negotiate。当报表服务器服务帐户不是这些内置帐户之一时,会配置 NTLM。若要在升级后解决此问题,可以编辑 RSReportServer.config 文件,将 AuthenticationType 配置为 RSWindowsNTLM。有关详细信息,请参阅如何在 Reporting Services 中配置 Windows 身份验证

返回页首

在与 64 位实例的并行部署中,卸载 SQL Server 2008 Reporting Services 的 32 位实例破坏了 64 位实例

如果在计算机上并行安装 SQL Server 2008Reporting Services 的 32 位实例和 64 位实例,卸载 32 位实例时,将删除 4 个 Reporting Services 注册表项。这样会破坏 Reporting Services 的 64 位实例。卸载 32 位实例时删除的 Reporting Services 注册表项为:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service\Performance:Counter NamesHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Windows Service\Performance:Counter NamesHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service\Performance:Counter TypesHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Windows Service\Performance:Counter Types

若要解决此问题,可以修复 64 位实例。尽管建议使用修复,但您可以使用注册表编辑器手动重新添加注册表项。

注意事项注意

错误编辑注册表会严重损坏您的系统。更改注册表之前,应当备份计算机中的所有重要数据。

使用注册表编辑器重新添加性能注册表项

  1. 打开注册表编辑器:

    1. 单击**“开始”,再单击“运行”**。

    2. 在**“运行”对话框的“打开”**框中,键入 regedit。

  2. 在注册表编辑器中,选择以下注册表项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service\Performance

  3. 右键单击 Performance 节点,指向**“新建”,然后单击“多字符串值”**。

  4. 键入 Counter Names,然后按 Enter。

  5. 在该节点中重复添加 Counter Types 注册表项。

  6. 导航到以下注册表项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSRS 2008 Web Service\Performance

  7. 右键单击 Performance 节点,指向**“新建”,然后单击“多字符串值”**。

  8. 键入 Counter Names,然后按 Enter。

  9. 在该节点中重复添加 Counter Types 注册表项。

修复 64 位实例或手动重新添加注册表项之后,可以使用性能监视器来配置要监视的 Reporting Services 性能对象。

返回页首

在 2 月份 CTP 版本后安装 SSL 证书时,在从 SQL Server 2008 Reporting Services 的 2 月份 CTP 版本升级到更新版本期间出现错误消息

如果在安装或升级到 2 月份 CTP 版本后,在 Internet 信息服务 (IIS) 中的默认网站上安装了安全套接字层 (SSL) 证书,则将 SQL Server 2008Reporting Services 从 2 月份 CTP 版本升级到 Release Candidate 0 (RC0) 或更新版本时,在升级过程中会收到以下错误:

“SQL Server 安装程序无法检索 SSL 证书名称。”

此问题将使您无法继续升级。为了避免此问题,请在升级到 RC0 或 RTM 之前删除默认网站上的 SSL 证书,然后在升级成功后将该证书重新应用于默认 IIS 网站。

页首

更改历史记录

更新的内容

在有关在运行 Reporting Services 的计算机上升级操作系统后未设置性能计数器的部分中,更新了受影响的操作系统的列表。