合并代理和分发代理连接到订阅服务器。 可以在 SQL Server 登录名或 Windows 登录名的上下文下建立这些连接。 请务必为这些代理提供适当的登录名,同时遵循授予必要最低权限的原则,并保护所有密码的存储。 有关每个代理所需的权限的信息,请参阅 复制代理安全模型。
分发代理
每个订阅都可以有一个分发代理(独立代理,这是在新建发布向导中创建的发布的默认设置),或者每对发布数据库和订阅数据库可以共享一个分发代理。 T
若要指定推送订阅的连接信息,请参阅 “创建推送订阅”。
若要指定请求订阅的连接信息,请参阅 “创建请求订阅”
合并代理
每个合并订阅都有自己的合并代理,用于连接和更新发布服务器和订阅服务器。
若要指定推送订阅的连接信息,请参阅 “创建推送订阅”。
若要指定请求订阅的连接信息,请参阅 “创建请求订阅”。
立即更新订阅
配置立即更新订阅时,请在订阅服务器上指定一个帐户,在该订阅服务器上建立与发布服务器的连接。 连接由在订阅服务器上触发的触发器使用,并将更改传播到发布服务器。 有三个选项可用于连接类型:
在复制过程中创建的链接服务器;使用您在配置时指定的凭据建立连接。
复制创建的链接服务器;连接是使用在订阅服务器上进行更改的用户的凭据建立的。
已定义的链接服务器或远程服务器。
重要
若要指定连接信息,请使用存储过程sp_link_publication(Transact-SQL)。 还可以使用新建订阅向导中的“可更新订阅”页,该页调用sp_link_publication。 在某些情况下,如果订阅服务器运行 SQL Server 2005 Service Pack 1(SP1)或更高版本,并且发布服务器正在运行早期版本,则此存储过程可能会失败。 如果此方案中存储过程失败,请将发布服务器升级到 SQL Server 2005 SP1 或更高版本。
有关详细信息,请参阅创建事务发布的可更新订阅和查看和修改复制安全设置。
重要
只应向为连接指定的帐户授予插入、更新和删除复制在发布数据库中创建的视图上的数据的权限;不应向其提供任何其他权限。 向在每个订阅服务器上配置的帐户授予对发布数据库中以 syncobj_<HexadecimalNumber> 格式命名的视图的权限。
排队更新订阅
配置排队更新订阅时,请记住两个与安全性相关的区域:
每个分发服务器只有一个队列读取器代理。 建议为每个发布服务器仅配置一个启用排队更新订阅的发布。
队列读取器代理与分发服务器、发布服务器和每个订阅服务器建立连接:
在创建代理时指定代理运行并连接到分发服务器的帐户(如果使用新建发布向导,则创建用于更新订阅的发布时会创建代理)。
为发布服务器配置分发时,指定代理连接到发布服务器的帐户。 指定运行代理的 Windows 帐户或 SQL Server 帐户。
创建订阅时指定代理连接到订阅服务器的帐户。
重要
使用 SQL Server 身份验证连接到订阅服务器,并为每个订阅服务器的连接指定不同的帐户。 如果使用请求订阅,复制始终将连接设置为使用 Windows 身份验证(对于请求订阅,复制无法访问使用 SQL Server 身份验证所需的订阅服务器上的元数据)。 在这种情况下,请将连接更改为在配置订阅后使用 SQL Server 身份验证。
有关详细信息,请参阅《如何创建事务发布的更新订阅》(SQL Server Management Studio)以及查看和修改复制安全设置。