2013-05-31 113 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