2011-10-08 76 views
4

我有一個SQL Server Express實例,它具有非常正常的格式良好的數據庫。我需要將數據不斷複製到另一臺服務器上的SQL Server Express實例。從一個SQL Server Express複製到另一個

現在,我知道SQL Server Express不包含內置複製的Publisher部分,所以我正在尋找其他解決方案。我不想升級任何數據庫。當然,我可以使用guids,timestamps等自己製作複製,並使用我自己的編碼傳輸數據(如SQL Server Express database replication/synchronization中所建議的),但我想避免所有這些工作,尤其是看到複製是真的非常基本。

也許一個通用的觸發器添加到每個表? 也許某種數據庫工作?

有什麼建議嗎?

+1

如果你想要非Express功能,那麼你必須推出自己的或許可更高版本 – gbn

回答

3

您將無法使用任何內置作業調度,因爲Express不附帶SQL Server代理。

這裏是你的選擇,據我看到它:

  1. 寫一個應用轉移了「文章」從你的「出版商」 DB到你的「用戶」 DB(S)
  2. 創建一套意見有一個數據,你想要發佈的總和。然後在這些視圖上創建INSTEAD OF觸發器(您無法在視圖上創建一個AFTER/FOR觸發器)來處理該數據並將其傳輸到您的「用戶」。

這些都不是非常密集的任務。在我看來,爲了讓它集中,我會走第一條路線。這樣,所有的邏輯都包含在應用程序中,而您的「發佈者」數據庫對複製無知。更不用說你的應用程序可以很容易地處理不可用的訂閱者。

+0

我並不想在我的應用程序的任何地方編程發佈者邏輯,只是因爲它需要相當多的工作和維護,並且會容易出錯。 –

+0

@NielsBrinch,也許我誤解了你的評論,但是我想到的是專門用於這種複製的獨立應用程序,而不是簡單地向現有應用程序添加複製功能。我同意,這不會是一個好主意。我可以理解你的預訂,但實際上你不會有任何簡化的解決方案。這是SQL Server的非Express版本的好處之一,具有這些開箱即用的功能。 – 2011-10-08 14:07:14

+0

謝謝鯊魚,對於遲到的回覆感到抱歉,我一定錯過了關於這個問題活動的一些通知。 –

相關問題