當我已經在執行 SQL Server 2014 時,是否應該安裝 SQL Server 2012 SP3?
我們已經執行 SQL Server 2014 快一年了,但 SQL Server 2012 SP3 繼續出現在 Windows 更新列表中(作為可選安裝)。從以前的版本安裝服務包似乎很荒謬,所以我忽略了它。
但是,我們最近開始遇到斷言失敗(有關更多資訊,請參見下文),我們正在嘗試解決它的一件事是確保伺服器已完全修補。我們安裝了 2014 年的最新累積更新,但它並沒有解決問題或使 SP3 項從 Windows 更新中消失。SP3 仍然不在我的關注範圍內,但後來我發現了一篇Microsoft 產品支持服務部落格文章,上面說要使用最佳實踐安全分析器嘗試解決斷言失敗問題,當我這樣做時,它發出了我們尚未應用的警告那個 SP3。
所以現在我正在考慮應用該安裝,但我擔心我會意外降級我的伺服器 - 不是我們會完全回到 2012 年,而是一些累積更新可能會被還原,或者其他一些奇怪的行為。
(這不是我們收到的確切斷言失敗,但很接近。我找不到似乎描述我們遇到的實際問題的知識庫文章 - 上一句中連結的知識庫與
TOP N
我們的有關與使用OFFSET X ROWS FETCH NEXT Y ROWS ONLY
. 的過程有關。實際的斷言失敗是SQL Server Assertion: File: <op_ppqte.cpp>, line=12258
)
Windows Update 沒有為您提供適用於 SQL Server 2012 實例的 Service Pack;您的機器上還有其他東西正在觸發它。可能有很多東西,但最常見的是:
- SQL Server 2014 實例不是您電腦上的唯一實例。您可能安裝了 SQL Express(單獨安裝,或作為 Visual Studio 的一部分,或作為某些其他軟體的一部分)、SQLLobalDB 或仍處於 SQL Server 2012 < SP3 的其他實例。
- 您還有其他服務,如 SSIS、SSRS、SSAS 等,這些服務從 2012 年開始,並沒有作為遷移到 2014 年的一部分進行升級。
- 您共享了 2012 組件 - 例如您升級了 2012 引擎但沒有升級工具,或者升級到工具失敗,或者您在升級後安裝了 2012 工具。
這是我的建議。
去下載 SQL Server 2012 SP3 獨立安裝程序:
當您在設置的早期執行安裝程序時,您將進入這樣的螢幕,它將告訴您所有符合升級條件的組件:
這將指示您需要修補或刪除哪些組件。
我認為你不應該忽視這一點。如果您在這台機器上有其他實例並且不希望它們在那裡,請清理它們!如果您確實需要它們,但未打更新檔,則可能是一個等待發生的安全漏洞。忽略應用服務包的提示根本沒有任何好處——你得到它是有原因的。
至於您遇到的斷言錯誤,也與您提供的 SQL Server 2012 Service Pack 無關。這可能表明您仍在 RTM 上並且缺少針對該問題的修復(在這種情況下,請獲取最新的 SP + CU,或者您遇到了尚未修復的錯誤(在在這種情況下,請聯繫 SQL Server 支持)。請注意,即使知識庫文章中未明確列出您的確切錯誤消息,修復也可能涵蓋您的問題。
您實際上無法將以前產品 (2012) 的服務包安裝到目前產品上。我猜你有 SQL Express 或一些共享組件/管理工作室等,這是 SP 適用的。
找出最簡單的方法,假設您沒有以任何其他方式清點您的伺服器,那就是從 GUI 執行 SP 並查看它認為可以更新的內容。
TL;DR 不,您不能在 2014 安裝上安裝 2012 SP。
食物