2008-09-24 81 views
3

1年前我們開始了一些海外合併複製,一切都很順利。我的問題是,我們的系統中有太多數據,因此訂戶服務器上的任何崩潰都將是一場災難:重新初始化訂閱標準方式需要數天(我們的連接速度肯定很慢,但已經非常昂貴)!在我一直在跟進的思路如下:MS-SQL Server 2005:使用備用快照位置初始化合並訂閱

  1. 使原來 數據庫的副本,冷凍它,通過平面發送的文件 給用戶,並 啓動複製,而不 快照:這是這一點是很 與舊 版本的SQL traditionnaly完成,但它聽起來 有點亂對我說:我會 擺在 只讀模式我的出版商的數據,並停止所有 重複,直到操作 完成了。
  2. 使數據的快照, 送出國快照文件, 在用戶安裝它們,並 指明新的快照位置 作爲 複製屬性的備用位置。這一個 聽起來對我來說公平(沒有必要暫停正在進行的複製,沒有數據凍結),但是,在這個點上,微軟幫助不... 幫助。

我相信你們中有些人已經遇到過這種情況。你的選擇是什麼?編輯:當然,可以說「你爲什麼不試一試你的想法」,但是它需要花費數小時(SQL服務器,虛擬機和所有這些東西的多個實例......)。 ),我在想,做這件事的人只需要2分鐘就能解釋他的想法。如果有人願意放下2分鐘的時間,讓我騰出幾個小時的辛勤工作,我會是最快樂的人......

回答

1

將數據從洛杉磯,CA複製到中國時,我不得不做類似的事情。快照將花費44天來使用常規方法加載。

我所做的是將SQL複製配置爲使用快照的本地路徑。然後,我禁用了事務性作業(在你的情況下合併作業)。然後我跑了。我壓縮了這些文件,並將加利福尼亞州的文件通過FTP傳輸到中國。當他們到達中國時,我將它們解壓縮並放入我在加利福尼亞州使用的文件夾路徑中。

然後我在中國服務器的命令行上運行distrib.exe。這將數據加載到中國的表格中。一旦加載完成,我關閉了中國服務器上的分銷商,並啓動了加利福尼亞服務器上的普通分銷商。

這種方法只花了大約28個小時,而不是一個月。

如果您的數據需要幾天時間才能到達目的地,那麼您將需要編輯發佈並增加可以排隊的數據量,或者訂閱者將超時並創建新的快照將需要採取。

1

我們剛剛經歷過類似這樣的事情,但並不漂亮。儘管所涉及的所有服務器都是本地的,但仍然需要很長時間。

只是爲了讓事情變得更加困難,至少在SQL 2000中,如果壓縮的cab將超過4 Gig,則快照將失敗。

我可以提供的最好的建議是確保每個網站都有良好的備份可用。這樣,至少數據不需要手動傳送給用戶。