2010-01-05 26 views
0

我需要通過DSL線路(大約16k/s)遠程連接到SQL Express 2005實例,速度要快得多。在軟件級別的SQL Server複製?

我想我可以通過在客戶端的本地計算機上創建一個SQL Express 2005實例並使其成爲服務器上數據的緩存版本來實現。

我打算只允許更改遠程服務器,然後要求用戶偶爾從它下拉更新。這並不理想,但它會起作用。

因此,沒有SQL Express的支持我在網絡上類似查詢:

INSERT INTO local.dbo.users (id, username, email, timestamp_modified) 
    SELECT remote.dbo.users(id, username, email, timestamp_modified) 
     WHERE remote.dbo.users.timestamp_modified > LAST MODIFIED 

回答

1

爲什麼寫的東西已經建成並提供給您與您已安裝的產品?

你應該看看你的DSL線上的日誌傳送。這是一款非常可靠的SQL Server產品,並且已經進行了廣泛的測試。

http://msdn.microsoft.com/en-us/library/ms187103.aspx

雖然Express版本沒有SQL Server代理,也有變通方法,您可以使用:

http://blog.willbeattie.net/2009/07/log-shipping-in-sql-server-express-2008.html

+0

需求日誌傳送似乎不可能。 – 2010-01-05 18:56:44

2

對於一個你可以使用真正的複製。您還應該查看Service Broker。兩者都允許您將數據從遠程推送到SQL Express實例。 Service Broker的性能和擴展性更好,經過慢速DSL連接的驗證,但其學習曲線陡峭。 Replicaiton很容易設置,但你必須忍受它的限制。

使用像你計劃的鏈接服務器不會工作。不可靠,速度慢,並且通過鏈接服務器進行更新需要您設置分佈式事務。

+0

當其中一個副本關閉大部分時間(這是一臺筆記本電腦)時,複製如何工作?是否可以在按下按鈕時按需複製? – 2010-01-05 18:57:41

+1

對於Ocasinally Connected Systems而言,它們都不能很好地工作,尤其是經常更改IP /名稱的筆記本電腦(筆記本電腦在網絡上具有不同的IP和完全限定名稱,取決於它們從哪裏連接)。一種選擇是通過VPN使用Snapshot複製(相當麻煩,並且您需要一種在筆記本電腦連接時啓動複製代理的方式)。另一種選擇是同步框架:http://msdn.microsoft.com/en-us/sync/bb887608.aspx這是專爲筆記本電腦和移動設備設計的。 – 2010-01-05 19:02:21