Set up SQL Replication by Remote Distribution & Domain Account Step By Step

建立SQL Replication可以選擇 Local Distribution 或是 Remote Distribution,兩種架構各有他的優缺點,這篇會一步一步教大家如何設定Remote Distribution。

使用 Remote Distribution代表將Publisher和Distributor分開在不同的Instance上,同時代表工作量就會被拆分在Publisher 和 Distributor上。利用這個架構可以改善SQL Replication的效能。缺點是必須多維護一台Distribution Server,並且花比較多時間設定,優點是可以減少Publisher的負擔。如果有很多Publisher和Subscriber,其實利用Remote Distribution這個架構或許是一個不錯的考量。 如果使用此架構也需要同時考量到Network, IO的影響。

Step 1 建立Share Folder並給予 Domain Account Read/Write Permission
2018-05-16_182143.png

2018-05-16_182425.png

Step 2 設定Remote Distribution

首先在要在Remote Distribution的Server上設定

2018-05-16_183425.png

2018-05-16_183721.png

將路徑從原本的Defaut位置改為剛剛建立ShareFolder的路徑

2018-05-16_184025.png

2018-05-16_184201.png2018-05-16_184454.png

2018-05-17_103417.png

2018-05-17_103914.png

輸入用於驗證的密碼(自定義)

2018-05-17_172133.png

 

2018-05-17_172347.png

 

Step 3 Publisher Configuration

和Step2一樣,但是這次要在Publisher上設定

2018-05-16_183425.png

2018-05-17_172708.png

選擇Step 2設定好的Remote Distrubution Server

2018-05-17_173036.png

2018-05-17_173305.png

輸入和Step 2一樣的密碼

2018-05-17_172133.png

Step 4 Grant Permission for Domain\Replication

以下幾個DB需要給與Domain\Replication dbowner的權限

  • Publisher Server:
    • Source DB
  • Distribution Server
    • Distribution
  • Subscriber Server
    • Target DB

如果還有遇到Permission問題可以確認一下是否為job owner 並且有 SQLServer Agent User Role 在msdb的權限。此外Domain\Replicaiton需要有可以Read/Write snapshot folder的權限。

Step 5 Create the testing replication

2018-05-17_174522.png

2018-05-17_174700.png

選擇Transaction Replication做為測試

2018-05-17_174754.png

選擇要複寫的Table

2018-05-17_174835.png

2018-05-17_175100.png

然後輸入Domain\Replication的帳號密碼

2018-05-17_175011.png

2018-05-17_175201.png

2018-05-17_175221.png

2018-05-17_175317.png

接著在建立Subscribution

2018-05-17_175420.png

2018-05-17_175533.png

2018-05-17_175648.png

再次輸入Domain\Replication 的帳號密碼

2018-05-17_175728.png

2018-05-17_175832.png

最後在Source輸入資料看資料有沒有同步來驗證是否有建立成功。

 

要截圖分享如何一步一步做實在是一件麻煩的事情,以後可能用影片會比較有效率,寫這篇實在是有夠累的,有機會在分享Script去建要注意那些參數。

另外如果是用Local Distribution其實可以選擇用Local Account去設定權限,微軟官方是建議建四個帳號,這是微軟建議的四個帳號,至於這樣方便管理與否由大家去考量,好處是可以藉由Login清楚了解目前各個Session是在做什麼事情,怎麼用Local Account去設定SQL Replication我就不多介紹了,以下附上連結。

想當年建Replication看文字看到吐血,如今微軟居然圖文並茂SOP… 真是TMD

https://docs.microsoft.com/en-us/sql/relational-databases/replication/tutorial-preparing-the-server-for-replication?view=sql-server-2017

 

 

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s