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

时间:2018-08-02 07:24:25

标签: sql-server reporting-services ssrs-2016 ssrs-2017

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

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

目前,一切正常。

然后我需要将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配置管理器中,我已删除所有加密数据。 我可以浏览到报告Web门户URL,查看数据源和已部署的测试报告文件,但是当我尝试打开报告时,会遇到错误。

  

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

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

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

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

3 个答案:

答案 0 :(得分:0)

我通过

解决了该问题

1-备份ReportServer数据库,然后将其删除

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

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

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

5-通过“数据库”标签重新创建数据库

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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

USE [ReportServer]
DELETE FROM ServerUpgradeHistory WHERE ServerVersion > 173

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

https://serverfault.com/a/893739