Sql-Server

Reporting Service 2014 Service Pack 1 無法使用錯誤 - 錯誤的數據庫版本

  • June 26, 2017

今晚,我們使用 SQL Server 2014 Service Pack 1 升級了我們的 SQL Server 2012 (SP2+CU6) 集群。

在該集群節點上,我們有本機模式 Reporting Services 橫向擴展配置。

就地升級到 SQL Server 2014 SP1 後,我們從 Reporting Services 網頁收到錯誤:

報表伺服器數據庫的版本格式無效或無法讀取。找到的版本是“163”。預期版本是“162”。

那麼問題來了——當我們升級到最新版本的 SQL Server 2014 和 Service Pack 1 時,為什麼會出現這個錯誤?

有兩種解決方法:

  1. 從表 ServerUpgradeHistory 中刪除一條記錄

採用

$$ name_of_you_SSRS_database $$ 從 ServerUpgradeHistory 中刪除 ServerVersion = 163

  1. 為 SQL Server 2014 Service Pack 1安裝累積更新1。在使用累積更新 1 更新 SQL Server 2014 SP1 之前 - 在實驗室中對其進行嚴格測試。

請注意 - 在將SSRS 2012 升級到 2014 之前,請注意備份加密密鑰。應用 CU1 後,您將無法訪問所有加密內容。

架構改變是有原因的從升級歷史中刪除記錄絕對不應該是第一選擇。 您應該安裝累積更新。

發生這種情況的原因是,例如,累積更新Service Pack 'x'可能包含比Service Pack 'x + 1'. 因此,當您安裝 時Service Pack 'x + 1',您可能會錯過那些較新的更改,因此您可能需要對新服務包進行累積更新。

這篇文章是一個很好的概述:https ://social.technet.microsoft.com/wiki/contents/articles/32360.sspr-troubleshooting-the-version-of-the-report-server-database-is-either-in -a-format-that-is-not-valid-or-it-cannot-be-read.aspx

SQL Server 內部版本號部落格可以幫助解決它(http://sqlserverbuilds.blogspot.com/

例如,我們在安裝 SQL 2012 SP3 時遇到了這個問題:我們安裝了 SP2 的累積更新,然後我們得到了 2016 年 11 月的安全更新——所以我們有“CU”版本(注意有兩個“安全更新”)對於 SQL 2012 SP2”:“GDR”版本(如果您沒有安裝任何 CU)和“CU”版本)。

如果您查看建構列表,您會發現該安全更新基本上將我們帶到了 SP2 CU14,如果您查看上面的文章,它會將我們帶到 Reporting Services 架構版本 164。所以當安裝 SP3 時,我們有“安全更新對於 SQL Server 2012 Service Pack 3 GDR,它基於早期版本,只有版本 163。所以——根據文章——我們需要安裝 SP3 CU5 或更高版本才能讓我們回到“164”模式版本。

引用自:https://dba.stackexchange.com/questions/104851