【问题标题】:SQL Server merge replication permissions issueSQL Server 合并复制权限问题
【发布时间】:2013-05-27 16:26:31
【问题描述】:

我设置了合并复制,在我们的开发服务器 (SQL Server 2008 R2 SP2) 上发布并在我的本地计算机上订阅。出版商充当自己的分销商。我本地计算机上订阅属性中的发布者和分发者连接正在使用发布的发布访问列表 (PAL) 中的登录名(来自开发服务器)。如果我将此登录名添加到发布者的 sysadmin 服务器角色,则在同步订阅时一切正常。但是,如果我从 sysadmin 服务器角色中删除登录名,同步将不起作用——我得到一个超时(“操作超时”)。

我的理解是,我只需要将登录名添加到 PAL,但我一定缺少必要权限的内容。

我的另一个问题是是否可以创建一个数据库角色,其成员将自动添加到 PAL。我在某处读到 SQL Server 2008 SP3 可以做到这一点;我想知道SP2是否有可能。或者有没有办法创建一个具有所有必要权限的数据库角色,以便其成员(用户)可以在订阅中使用(作为发布者和分发者连接)?

这一切的背景是我们有用户订阅我们的出版物,但我们只想根据他们的登录来复制数据。因此,我们在使用SUSER_SNAME() 的文章中设置了过滤行。

提前致谢。

布拉德

【问题讨论】:

    标签: sql sql-server-2008-r2 replication merge-replication


    【解决方案1】:

    如果这是推送订阅,则用于与发布者和分发者建立连接的合并代理进程帐户必须是分发数据库中的 db_owner,是 PAL 的成员,与发布数据库中的用户关联的登录名,并拥有快照共享的读取权限。

    如果这是一个请求订阅,则用于与订阅者建立连接的合并代理进程帐户必须是订阅数据库中的 db_owner。用于连接到 Publisher 和 Distributor 的帐户必须是 PAL 的成员、与发布和分发数据库中的用户关联的登录名,并且对快照共享具有读取权限。

    这一切都在Replication Agent Security Model 中的代理所需的权限部分中进行了介绍。

    【讨论】:

    • 谢谢,布兰登。在我的发布属性中,在快照下,我勾选了“将文件放入以下文件夹”;文件路径是我们网络某处的共享。 “对快照共享具有读取权限”是否意味着我用于发布者和分发者连接的帐户需要对快照文件所在位置的文件夹具有读取权限?
    • 抱歉耽搁了,是的,您用于发布者和分发者连接的帐户需要对快照文件夹具有读取权限。
    • 我没有将用户添加到我的分发数据库中。一旦我这样做了,一切都很好。再次感谢布兰登。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多