0

我在服务器 A 上安装了一个 SQL Server 2012 数据库实例。

然后,我在服务器 B 上仅安装了 SSRS 2016(不是完整的 SQL Server 2016),但将 SSRS 实例指向安装在服务器 A 上的 SQL Server 2012 实例上的 ReportServer 数据库。

在这一点上,一切都很好。

然后,我需要将 SSRS 2016 升级到 SSRS 2017。我使用了来自https://www.microsoft.com/en-us/download/details.aspx?id=55252的 Microsoft SQL Server 2017 Reporting Services 独立安装程序

在 SSRS 2017 配置管理器中,我选择使用现有数据库并指向我在服务器 A 上的 SQL Server 2012 实例中拥有的 ReportServer 数据库。

在 SSRS 2017 配置管理器中,我已删除所有加密数据。我可以浏览到报告门户网站 URL,查看数据源和部署的测试报告文件,但是当我尝试打开报告时,我收到错误消息。

报表服务器数据库的版本格式无效或无法读取。找到的版本是“2017”。预期版本是“173”。(rsInvalidReportServerDatabase)

我试图运行delete from ReportServer.dbo.ServerUpgradeHistory where ServerVersion = 173,但我仍然得到同样的错误。

看起来旧版本的值仍然存储在某个配置文件中。

我还应该去哪里看,我还应该尝试什么?

4

3 回答 3

0

Solution is to upgrade SQL Server 2016 to Service Pack 2: SQLServer2016SP2-KB4052908-x64-ENU https://www.microsoft.com/en-us/download/details.aspx?id=56836

于 2019-07-03T16:42:17.550 回答
0

我解决了这个问题

1- 备份 ReportServer 数据库,然后删除它们

2- 停止所有报表服务的 windows 服务。让他们手动启动。

3- 打开 Reporting Services 配置表单开始菜单 > SQL Server {版本}

4- 从配置应用程序启动服务

5- 从数据库选项卡重新创建数据库

于 2019-02-27T15:23:13.483 回答
0

我发现的侵入性最小的解决方案是:

USE [ReportServer]
DELETE FROM ServerUpgradeHistory WHERE ServerVersion > 173

感谢@Henrik H 在以下帖子中:

https://serverfault.com/a/893739

于 2020-05-28T06:18:50.147 回答