none
MSSQL 2005/2000 replication 可以這樣用嗎? RRS feed

  • 問題

  • Table_A=MSSQL_A(MSSQL2005).Table_A

    Table_B=MSSQL_B(MSSQL2000).Table_B

    Table_C=MSSQL_B(MSSQL2000).Table_C

    Table_A---push replication(Transactional publication)---Table_B---push replication(Transactional publication)---Table_C

    請問各位大大有沒有人這樣用,實務上真的可行嗎?

    PS:建是可以建,不知使用下去會不會有甚麼瓶頸?

     

    2010年6月7日 上午 05:45

解答

所有回覆

  • hi

    實務上是可行的,但有些考量要注意,可以參考

    如果這三個Table因為不同原因而分散到其他地方存放,這樣使用複寫機制確實不錯,但如果只是單存要將TBLA資料給TBLB和TBLC的話(又不要求即時性),
    或許定期備份TBLA to TBLB to TBLC,也許會比較OK點。


    • 已標示為解答 MIS...GUY 2010年6月7日 上午 10:35
    2010年6月7日 上午 09:35
    版主
  • thanks ricoisme大

    有要求即時性

    MSSQL_A in intranet

    MSSQL_B in DMZ

    是這樣的,因為tableA到tableB是跨Firewall,因為要推的資料有230多萬筆。

    實務上在使用時經常發現,若是網路有問題(通常是不穩定,瞬斷嚴重),replication就會死給你看(snapshot is not available),這時就必須reinitial snapshot。但我們的TableA是隨時有交易在進行,若是做snapshot這麼多筆資料,怕TableA/TableB會lock(且TableB在完成前也會被清空,而TableB是給DMZ的ap server access的),所以才想出這樣的方法(TableC),這樣A to B若是重建,C也不會沒資料

    但實際上A to B真的掛掉,重建A to B to C該如何實做,正在測試中......

     

    2010年6月7日 上午 10:35
  • How did you set replication? Don't need reinitial snapshot if lose connection for short time.
    2010年6月7日 下午 03:18