2013-05-31 150 views
1

我設置了合併複製,並在我們的開發服務器上發佈了一個發佈(SQL Server 2008 R2 SP2)和我的本地機器上的一個訂閱。出版商是作爲其自己的分銷商。本地計算機上訂閱屬性中的發佈者和分發者連接正在使用發佈的發佈訪問列表(PAL)中的登錄(來自開發服務器)。如果我將此登錄信息添加到發佈服務器上的sysadmin服務器角色,那麼在同步訂閱時一切正常。但是,如果我從sysadmin服務器角色中刪除登錄名,同步不起作用 - 我收到一個超時(「操作超時」)。SQL Server合併複製權限問題

我的理解是我只需要添加登錄到PAL,但我必須缺少必要的權限的東西。

我的另一個問題是是否有可能創建一個數據庫角色,其成員會自動添加到PAL。我在某處讀到,SQL Server 2008 SP3可以實現這一點;我想知道是否可以使用SP2。還是有辦法創建一個具有所有必要權限的數據庫角色,以便其成員(用戶)可以用於訂閱(作爲發佈者和分發者連接)?

所有這些的背景是我們有訂閱我們的出版物的用戶,但我們只想複製基於他們的登錄數據。因此,我們在使用SUSER_SNAME()的文章上篩選了一些行。

在此先感謝。

布拉德

回答

2

如果這是一個強制訂閱,然後用來製作到發佈服務器和分發連接必須在分發數據庫的db_owner合併代理進程帳戶,是與相關的PAL的成員,登錄用戶在發佈數據庫中,並擁有對快照共享的讀取權限。

如果這是一個請求訂閱,那麼用於與訂閱服務器建立連接的合併代理進程帳戶必須是訂閱數據庫中的db_owner。用於連接到發佈服務器和分發服務器的帳戶必須是PAL成員,與發佈和分發數據庫中的用戶關聯的登錄帳戶,並且具有快照共享的讀取權限。

全部涵蓋在部分代理所需的權限 in Replication Agent Security Model

+0

謝謝布蘭登。在我的發佈屬性中的快照下,我已經勾選了「將文件放入以下文件夾」;文件路徑是我們網絡上的一個共享位置。 「對快照共享具有讀取權限」是否意味着我用於發佈者和分發者連接的帳戶需要具有對作爲快照文件位置的文件夾的讀取權限? – user1360192

+0

抱歉,延遲是,您用於發佈者和分發者連接的帳戶需要具有快照文件夾的讀取權限。 –

+0

我還沒有將用戶添加到我的分發數據庫。一旦我這樣做,一切運作良好。再次感謝布蘭登。 – user1360192