sp_replicationdboption (Transact-SQL)

适用于: SQL Server Azure SQL 托管实例

设置指定数据库的复制数据库选项。 此存储过程在发布服务器或订阅服务器上对任何数据库执行。

Transact-SQL 语法约定

语法

sp_replicationdboption
    [ @dbname = ] N'dbname'
    , [ @optname = ] N'optname'
    , [ @value = ] { N'true' | N 'false' }
    [ , [ @ignore_distributor = ] ignore_distributor ]
    [ , [ @from_scripting = ] from_scripting ]
[ ; ]

参数

[ @dbname = ] N'dbname'

要为其设置复制数据库选项的数据库。 @dbname为 sysname,无默认值。

[ @optname = ] N'optname'

要启用或禁用的复制数据库选项。 @optname是 sysname,可以是以下值之一。

说明
merge publish 数据库可用于合并发布。
publish 数据库可用于其他类型的发布。
subscribe 数据库为订阅数据库。
sync with backup 启用数据库以进行协调备份。 有关详细信息,请参阅 为事务复制启用协调备份。

[ @value = ] { N'true' |N 'false' }

是启用或禁用给定的复制数据库选项。 @value为 sysname,无默认值。 如果此值为false@optname merge publish,则也会删除对合并已发布数据库的订阅。

[ @ignore_distributor = ] ignore_distributor

指示是否在未连接到分发服务器的情况下执行此存储过程。 @ignore_distributor,默认值为 0.

  • 如果 0为分发服务器,则应使用发布数据库的新状态连接到和更新分发服务器。

  • 1 仅当分发服务器不可访问并且用于禁用发布时,才 sp_replicationdboption 应指定。

[ @from_scripting = ] from_scripting

标识为仅供参考。 不支持。 不保证以后的兼容性。

返回代码值

0(成功)或 1(失败)。

注解

sp_replicationdboption 用于快照复制、事务复制和合并复制。

此过程根据给定的选项创建或删除特定的复制系统表、安全帐户,等等。 设置相应的 is_published (事务复制或快照复制)、 is_merge_published (合并复制)或 is_distributor 系统表中的 master.databases 位,并创建必要的系统表。

若要禁用发布,发布数据库必须联机。 如果发布数据库存在数据库快照,则必须在禁用发布前将快照删除。 数据库快照是数据库的只读脱机副本,与复制快照无关。 有关详细信息,请参阅数据库快照(SQL Server)。

权限

只有 sysadmin 固定服务器角色的成员才能执行sp_replicationdboption