0

我有一個合併複製與拉用戶(Sql Express 2008R2)和Sql Server 2008 R2作爲發佈者。我只想爲特定用戶打開日誌記錄,僅用於偶爾的調試。用戶機器上的SSMS不是一種選擇。merge pull訂閱輸出路徑更改(Sql Express 2008R2)

我知道我應該在用戶(http://msdn.microsoft.com/en-us/library/ms187722.aspx)上創建合併代理時使用'optional_command_line'並設置'-Output'屬性。

但是我創建了代理,並且已經在同步中心計劃了好幾個月,現在想要編輯代理的屬性 - 在某些訂戶機器上臨時設置其輸出路徑和詳細級別。

有沒有辦法做到這一點,而不必重做整個訂閱?像這樣的東西(http://support.microsoft.com/kb/312292),但只有他們建議的非gui版本。

我有什麼選擇?如果未指定-Output,則根據此(http://msdn.microsoft.com/en-us/library/ms147839.aspx)將輸出發送到控制檯。如果我的合併日程安排是通過同步中心進行的,那麼我可以在哪裏找到這個日誌信息,如果我沒有專門確定我的日誌文件?

回答

1

代理輸出到文件不能通過同步中心完成。您需要通過命令行進行按需同步,以便使用SQL Server Express啓用詳細的代理日誌記錄。要從命令行運行合併代理,請從COM文件夾執行replmerg.exe。它會是這個樣子:

enter image description here

這個例子輸出冗長合併代理登錄到C:\ TEMP \ mergeagent.log。您將需要根據您的環境更新replmerg.exe參數值。

+0

你是對的!在我的測試環境中,我使用optional_command_line = N'-Output C:\ replicationLogs \ TestLog.log' 創建了一個測試訂閱,但沒有運氣。一般來說,對於訂閱訂閱,更好的方法是什麼?避免同步中心並安排批處理腳本來運行replmerg.exe?性能方面,-Output選項在生產中可以使用嗎?可能與-OutputVerboseLevel 1? – Brian

+0

只應在故障排除時使用-Output和-OutputVerboseLevel選項。如果同步中心正在爲您工作,請記住,您必須從命令行按需執行replmerge.exe以使用-Output和-OutputVerboseLevel。如果同步中心給你帶來問題,那麼是的,在批處理腳本中執行replmerge.exe作爲計劃任務。 –

+0

謝謝。只需確認一下,所以在使用Sync Center時沒有「默認」位置查看複製日誌的權利? – Brian