Sql-Server

SQL Server 2012 和 SQL Server 2016 版本之間的事務複製失敗

  • May 7, 2020

根據 Microsoft 文件 - 事務發布的訂閱者可以是發布者版本的兩個版本中的任何版本。例如:

SQL Server 2012 (11.x) 發布者可以擁有 SQL Server 2014 (12.x) 和 SQL Server 2016 (13.x) 訂閱者;

SQL Server 2016 (13.x) 發布者可以有 SQL Server 2014 (12.x) 和 SQL Server 2012 (11.x) 訂閱者。

但是我試圖從中創建的訂閱

Microsoft SQL Server 2012 (SP3) (KB3072779) - 11.0.6020.0 (X64) 到 Microsoft SQL Server 2016 (SP2-CU12) (KB4536648) - 13.0.5698.0 (X64)

失敗了,這是我收到的錯誤消息-

所選訂閱者不滿足所選發布的最低版本兼容級別。

這些版本不兼容嗎?

版本要求的另一半是您的分發伺服器是您的複制拓撲中的最高 SQL Server 版本。

在您的情況下,您正在從 SQL Server 2012 複製到 SQL Server 2016,這僅在您的分銷商也是 SQL Server 2016 時才有效。

如果您distribution在 2012 發布者上執行數據庫,則添加訂閱者時配置將失敗,因為訂閱者的版本高於分發者。您需要執行一個專用的分發伺服器(推薦),或者使用您的 2016 訂閱者作為分發伺服器。

您發布的錯誤消息具有欺騙性,因為它不是訂閱者/發布者版本問題,而是訂閱者/分發者版本問題。

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