迁移 Reporting Services 安装(本机模式)

本主题提供将以下受支持的 Reporting Services 本机模式部署版本之一迁移到新的 SQL Server 2014 Reporting Services 实例的分步说明:

适用于:Reporting Services 本机模式。

有关迁移 Reporting Services SharePoint 模式部署的信息,请参阅迁移 Reporting Services 安装(SharePoint 模式)

迁移定义为将应用程序数据文件移动到新的 SQL Server 2014 实例。 下面是必须迁移您的安装的常见原因:

  • 您具有大规模部署或正常运行时间要求。

  • 您在更改安装的硬件或拓扑。

  • 您遇到了阻止升级的问题。

本机模式迁移概述

Reporting Services 的迁移过程包括手动和自动的步骤。 报表服务器迁移包括以下任务:

  • 备份数据库、应用程序和配置文件。

  • 备份加密密钥。

  • 安装 SQL Server 2014 的新实例。 如果使用相同的硬件,则可以将 SQL Server 2014 与现有安装并行安装(如果它是受支持的版本之一)。

    提示

    并行安装可能需要将 SQL Server 2014 安装为命名实例。

  • 将报表服务器数据库和其他应用程序文件从现有安装移动到新的 SQL Server 2014 安装。

  • 将任何自定义应用程序文件移到新安装中。

  • 配置报表服务器。

  • 编辑 RSReportServer.config ,使其包括先前安装中的任何自定义设置。

  • 或者,为新的 Reporting Services Windows 服务组配置自定义访问控制列表 (ACL)。

  • 在确认新实例完全正常之后,删除未使用的应用程序和工具。

对于托管报表服务器数据库的 SQL Server 版本存在限制。 如果您在重复使用在以前安装中已创建的报表服务器数据库,请查看以下文章。

固定数据库名称

不能重命名报表服务器数据库。 创建数据库时,数据库的标识将记录在报表服务器存储过程中。 重命名报表服务器主数据库或临时数据库会在过程运行时导致错误,从而使报表服务器安装无效。

如果现有安装的数据库名称不适合新安装,应考虑创建一个具有名称的新数据库,然后使用下面列出的技术加载现有应用程序数据:

  • 编写调用报表服务器 Web 服务 SOAP 方法的 Visual Basic 脚本,以便在各数据库之间复制数据。 可以使用 RS.exe 实用工具来运行该脚本。 有关这种方法的详细信息,请参阅 脚本编写和带 Reporting Services 的 PowerShell

  • 编写调用 WMI 提供程序的代码,以在各数据库之间复制数据。 有关这种方法的详细信息,请参阅 访问 Reporting Services WMI 提供程序

  • 如果仅有少量项,则可以将报表、报表模型以及共享数据源从报表设计器、模型设计器和报表生成器重新发布到新的报表服务器。 必须重新创建角色分配、订阅、共享计划、报表快照计划、对报表或其他项设置的自定义属性、模型项安全性以及对报表服务器设置的属性。 您将丢失报表历史记录和报表执行日志数据。

开始之前

即使要迁移(而不是升级)安装,也要考虑针对现有的安装运行升级顾问以帮助确定可能会影响迁移的任何问题。 如果要迁移尚未安装或配置的报表服务器,则该步骤尤其有用。 通过运行升级顾问,可以了解新的 SQL Server 2014 安装中可能不支持的自定义设置。

此外,应注意 SQL Server 2014 中的一些重要更改,这些更改将影响迁移安装的方式:

  • 从 SQL Server 2008 开始,IIS 不再是必备组件。 如果要将报表服务器安装迁移到新计算机上,则无需添加 Web 服务器角色。 另外,URL 和身份验证的配置步骤不同于以前的版本,用来诊断和解决问题的方法和工具也是如此。

  • 报表服务器 Web 服务、报告管理器和报表服务器 Windows 服务合并到一个报表服务器服务中。 所有这三个应用程序都在同一个帐户下运行。 所有这三个应用程序都从 RSReportServer.config 文件中读取配置设置,这使得 RSWebApplication.config 被废弃。

  • 为了删除重叠功能而对报表管理器和 SQL Server Management Studio 进行了重新设计。 每个工具都支持一组不同的任务;这些工具不再能够互换。

  • SQL Server 2008 Reporting Services 及更高版本中不支持 ISAPI 筛选器。 如果使用 ISAPI 筛选器,则必须在迁移之前重新设计报表解决方案。

  • SQL Server 2008 Reporting Services 及更高版本不支持 IP 地址限制。 如果使用 IP 地址限制,则必须在迁移之前重新设计报表解决方案,或使用诸如防火墙、路由器或网络地址转换 (NAT) 等技术来配置被禁止访问报表服务器的地址。

  • SQL Server 2008 Reporting Services 及更高版本中不支持客户端安全套接字层 (SSL) 证书。 如果使用客户端 SSL 证书,则必须在迁移之前重新设计报表解决方案。

  • 如果使用 Windows 集成身份验证之外的身份验证类型,则必须将 <AuthenticationTypes> RSReportServer.config 文件中的 元素更新为支持的身份验证类型。 支持的身份验证类型包括 NTLM、Kerberos、Negotiate 和 Basic。 在 SQL Server 2008 Reporting Services 及更高版本中不支持匿名、.NET Passport 和摘要式身份验证。

  • 如果在报表环境中使用自定义级联样式表,则这些样式表不会被迁移。 必须在迁移后对它们进行手动移动。

有关 SQL Server 2014 Reporting Services 中的更改的详细信息,请参阅升级顾问文档和新增功能 (Reporting Services)

备份文件和数据

在安装新 Reporting Services 实例之前,请确保对当前安装中的所有文件进行备份。

  1. 备份报表服务器数据库的加密密钥。 此步骤对于成功迁移至关重要。 而且,在迁移过程中,必须还原加密密钥才能使报表服务器重新获得对加密数据的访问权限。 若要备份密钥,请使用 Reporting Services 配置管理器。

  2. 使用任一受支持的备份 SQL Server 数据库的方法来备份报表服务器数据库。 有关详细信息,请参阅将报表服务器数据库移至其他计算机(SSRS 本机模式)中有关如何备份报表服务器数据库的说明。

  3. 备份报表服务器配置文件。 要备份的文件包括:

    1. RSReportServer.config

    2. Rswebapplication.config

    3. Rssvrpolicy.config

    4. Rsmgrpolicy.config

    5. Reportingservicesservice.exe.config

    6. 报表服务器和报表管理器 ASP.NET 应用程序的Web.config。

    7. 针对 ASP.NET 的 Machine.config(如果针对报表服务器操作修改过该文件)。

安装 SQL Server Reporting Services

在仅文件模式下安装新的报表服务器实例,以便可以将该实例配置为使用非默认值。 对于命令行安装,请使用 FilesOnly 参数。 在安装向导中,选中 “安装但不配置” 选项。

单击以下链接之一以查看有关如何安装新的 Reporting Services 实例的说明:

移动报表服务器数据库

报表服务器数据库包含已发布的报表、模型、共享数据源、计划、资源、订阅和文件夹, 还包含系统属性、项属性以及对报表服务器内容的访问权限。

如果迁移包括使用不同的数据库引擎实例,则必须将报表服务器数据库移动到新的数据库引擎实例。 如果使用相同的数据库引擎实例,请跳至移动自定义程序集或扩展部分。

若要移动报表服务器数据库,请执行以下操作:

  1. 选择要使用的数据库引擎实例。 SQL Server 2014 Reporting Services要求使用以下版本之一来托管报表服务器数据库:

    • SQL Server 2014

    • SQL Server 2012

    • SQL Server 2008 R2

    • SQL Server 2008

  2. 启动 SQL Server Management Studio,然后连接到数据库引擎。

  3. RSExecRole如果数据库引擎从未托管过报表服务器数据库,请在系统数据库中创建 。 有关详细信息,请参阅 创建 RSExecRole

  4. 遵循将报表服务器数据库移至其他计算机(SSRS 本机模式)中的说明。

请记住,报表服务器数据库和临时数据库相互依赖而且必须一起移动。 请不要复制数据库;复制不会将所有安全设置转移至新安装。 请不要移动用于计划报表服务器操作的 SQL Server 代理作业。 报表服务器将自动重新创建这些作业。

移动自定义程序集或扩展插件

如果安装中包括自定义的报表项、程序集或扩展插件,则必须重新部署这些自定义组件。 如果没有使用自定义组件,请跳至 配置报表服务器部分。

若要重新部署自定义组件,请执行以下操作:

  1. 确定是支持程序集还是需要重新编译程序集:

    • 必须为 SQL Server 2005 版本创建的自定义身份验证扩展进行重新编译。

    • 必须使用呈现对象模型 (ROM) 重新编写 SQL Server 2008 Reporting Services 的自定义呈现扩展插件。

    • 在 SQL Server 2008 Reporting Services 及更高版本中不支持 HTML 3.2 和 HTML OWC 呈现器。

    • 其他自定义程序集应当不需要重新编译。

  2. 将这些程序集移到新的报表服务器和报表管理器 \bin 文件夹中。 在 SQL Server 2014 中,报表服务器二进制文件位于默认 SQL Server 2014 Reporting Services 实例的以下位置:

    \Program files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\ReportServer\bin

  3. 修改配置文件,以便为自定义组件添加条目。 所用程序集的种类不同,这些条目也会有所不同。 有关在何处放置文件和添加配置条目的说明,请参阅以下内容:

    1. 部署自定义程序集

    2. 如何:部署自定义报表项

    3. 部署数据处理扩展插件

    4. 部署传递扩展插件

    5. 部署呈现扩展插件

    6. 实现安全扩展插件

配置报表服务器

为报表服务器 Web 服务和报表管理器配置 URL,并配置与报表服务器数据库的连接。

如果要迁移扩展部署,则应使所有报表服务器节点脱机并按照一次迁移一个服务器的方式迁移各个服务器。 迁移第一个报表服务器并成功连接到报表服务器数据库后,报表服务器数据库版本将自动升级到SQL Server 2014 数据库版本。

重要

如果扩展部署中的所有报表服务器均联机并且尚未被迁移,则它们可能会遇到 rsInvalidReportServerDatabase 异常,因为它们在连接到升级的报表服务器数据库之后使用的仍是旧版架构。

注意

如果你迁移的报表服务器已配置为用于扩展部署的共享数据库,则需要在配置报表服务器服务前从 ReportServer 数据库的 Keys 表中删除所有旧加密密钥。 如果未删除这些密钥,迁移的报表服务器将尝试在扩展部署模式下进行初始化。 有关详细信息,请参阅添加和删除Scale-Out部署的加密密钥 (SSRS Configuration Manager) 配置和管理加密密钥 (SSRS Configuration Manager)

无法使用 Reporting Services 配置管理器删除横向扩展密钥。 必须使用 SQL Server Management Studio 从 Keys 数据库的 ReportServer 表中删除旧密钥。 删除 Keys 表中的所有行。 这将清除该表并准备将其用于只还原对称密钥,如下面的步骤所述。

在删除密钥之前,建议您首先备份对称加密密钥。 可使用 Reporting Services 配置管理器来备份密钥。 打开Configuration Manager打开,单击“加密密钥”选项卡,然后单击“备份”按钮。 还可以撰写 WMI 命令的脚本以便备份加密密钥。 有关 WMI 的详细信息,请参阅 BackupEncryptionKey 方法 (WMI MSReportServer_ConfigurationSetting)

  1. 启动Reporting Services Configuration Manager并连接到刚安装的 Reporting Services 实例。 有关详细信息,请参阅 Reporting Services Configuration Manager (本机模式)

  2. 为报表服务器和报表管理器配置 URL。 有关详细信息,请参阅配置 (SSRS Configuration Manager) URL

  3. 配置报表服务器数据库,并从以前的安装中选择现有的报表服务器数据库。 成功配置后,报表服务器服务将重启,一旦与报表服务器数据库建立连接,数据库将自动升级到 SQL Server 2014 Reporting Services。 有关如何运行用于创建或选择报表服务器数据库的更改数据库向导的详细信息,请参阅创建本机模式报表服务器数据库 (SSRS Configuration Manager)

  4. 还原加密密钥。 在针对报表服务器数据库中预先存在的连接字符串和凭据启用可逆加密时,此步骤是必不可少的。 有关详细信息,请参阅 Back Up and Restore Reporting Services Encryption Keys

  5. 如果报表服务器安装在新计算机上,并且您使用的是 Windows 防火墙,请确保该报表服务器侦听的 TCP 端口处于打开状态。 默认情况下,此端口为 80。 有关详细信息,请参阅 将防火墙配置为允许报表服务器访问

  6. 若要在本地管理本机模式报表服务器,需要配置操作系统以允许使用报表管理器进行本地管理。 有关详细信息,请参阅为本地管理配置本机模式报表服务器 (SSRS)

将自定义配置设置复制到 RSReportServer.config 文件

如果对先前安装中的 RSReportServer.config 文件或 RSWebApplication.config 文件进行过修改,则应当在新的 RSReportServer.config 文件中进行同样的修改。 以下列表总结了可能修改以前的配置文件的一些原因,并提供指向有关如何在 SQL Server 2014 中配置相同设置的其他信息的链接。

自定义 信息
具有自定义设置的报表服务器电子邮件传递 为报表服务器配置电子邮件传递 (SSRS Configuration Manager) 电子邮件设置 - Configuration Manager (SSRS 本机模式)
设备信息设置 在 RSReportServer.Config 中自定义呈现扩展插件参数
远程实例上的报表管理器 配置报表管理器(本机模式)

Windows 服务组与安全 ACL

在 SQL Server 2014 Reporting Services (SSRS) 中,有一个服务组,即Reporting Services Windows 服务组,用于为随 SQL Server 2014 安装的所有注册表项、文件和文件夹创建安全 ACLReporting Services。 此 Windows 组的名称以 SQLServerReportServerUser$<computer_name>$<instance_name> 格式显示。 此组取代了 SQL Server 2005 Reporting Services 中的两个 Windows 服务组。 如果具有与 SQL Server 2005 Reporting Services Windows 组之一关联的自定义 ACL,则需要将这些 ACL 应用到 SQL Server 2014 Reporting Services 中新报表服务器实例的新组。

验证部署

  1. 打开浏览器,并在 URL 地址中键入报表服务器虚拟目录和报表管理器虚拟目录,对这些目录进行测试。 有关详细信息,请参阅 验证 Reporting Services 安装

  2. 测试报表,并验证它们是否包含所需的数据。 检查数据源信息,查看是否仍指定了数据源连接信息。 报表服务器在处理和呈现报表时使用 SQL Server 2014 报表对象模型,但它不会将 SQL Server 2008 或 SQL Server 2008 R2 构造替换为新的报表定义语言元素。 若要详细了解现有报表如何在 SQL Server 2014 报表服务器上运行,请参阅升级报表

删除未使用的程序和文件

将报表服务器成功迁移到 SQL Server 2014 Reporting Services 实例后,可能需要执行以下步骤来删除不再需要的程序和文件。

  1. 如果不再需要早期版本的 Reporting Services,则将其卸载。 此步骤不会删除下列项,但是,如果不再需要这些项,则可以手动将其删除:

    • 旧的报表服务器数据库

    • RsExec 角色

    • 报表服务器服务帐户

    • 报表服务器 Web 服务的应用程序池

    • 报表管理器和报表服务器的虚拟目录

    • 报表服务器日志文件

  2. 如果此计算机上不再需要 IIS,则将其删除。

另请参阅

迁移 Reporting Services 安装(SharePoint 模式)
报表服务器数据库(SSRS 本机模式)
升级和迁移 Reporting Services
Reporting Services 后向兼容性
Reporting Services 配置管理器(本机节点)