Sql-Server

將單個表從 SQL Express 複製到 SQL Enterprise 2014

  • January 2, 2018

我們有一個小型分支應用程序,將一些數據儲存在 SQL Express 數據庫中。

如果我們有 SQL Enterprise 2014,我們希望在我們的總部擁有這張表的幾乎實時的副本。我說差不多,因為如果有 5 分鐘的延遲或類似的東西並不重要。

主要是分公司和總部斷網後可以同步。

任何不需要分支機構許可費用的解決方案?

您可以為此使用 SQL Server合併複製。SQL Enterprise 實例將是發布者,但合併複製可以雙向同步數據。因此,訂閱者所做的更改將被複製到發布者。

如果您將此配置為推送訂閱 ,則代理將全部在中央實例上執行,您可以使用 SQL 代理對其進行調度。

SQL 2014 Express實際上確實支持事務複製,但僅作為訂閱者,所以這在這裡不起作用。

last_modify_date該表是否具有在應用程序插入/更新行時可靠更新的內置欄位?

如果是這樣,我只需編寫一個自定義作業(可能是總部伺服器上計劃作業中的 SSIS 包),檢查更改的行並更新/創建總部副本中的相應行。

如果供應商應用程序不這樣做,那麼您必須做以下兩件事之一:

  1. 向表中添加觸發器以更新新modifydate欄位,並使用上述功能
  2. 編寫一個更複雜的過程,要麼每次複製整個表,要麼比較整個表以查找更改。

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