报表服务器数据库的版本格式无效,或者无法读取

问题描述 投票:0回答:3

我在服务器 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
但我仍然得到同样的错误。

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

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

sql-server reporting-services ssrs-2016 ssrs-2017
3个回答
0
投票

我通过

解决了这个问题

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

2- 停止所有报告服务的窗口服务。让他们手动启动。

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

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

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


0
投票

解决方法是将SQL Server 2016升级到Service Pack 2:SQLServer2016SP2-KB4052908-x64-ENU https://www.microsoft.com/en-us/download/details.aspx?id=56836


0
投票

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

USE [ReportServer]
DELETE FROM ServerUpgradeHistory WHERE ServerVersion > 173

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

https://serverfault.com/a/893739

© www.soinside.com 2019 - 2024. All rights reserved.