从日志传送计划中删除主数据库。
sp_change_primary_role [ @db_name = ] 'db_name'
, [ @backup_log = ] backup_log
, [ @terminate = ] terminate
, [ @final_state = ] final_state
, [ @access_level = ] access_level
[@db_name =] 'db_name'
指定要删除的主数据库名称。db_name 的数据类型为 sysname,没有默认值。
[@backup_log =] backup_log
备份主数据库事务日志的尾部。backup_log 的数据类型为 bit,默认值为 1。
[@terminate =] terminate
指定立即回滚所有挂起的事务,并在该存储过程运行期间将主数据库置于单用户模式下。terminate 的数据类型为 bit,默认值为 1。
[@final_state =] final_state
指定在完成该存储过程后数据库的恢复状态。final_state 的数据类型为 smallint,默认值为 1,可以是下列值之一。
值 | 描述 |
---|---|
1 | RECOVERY |
2 | NO RECOVERY |
3 | STANDBY |
有关这些选项含义的更多信息,请参见 RESTORE。
[@access_level =] access_level
指定完成该存储过程后数据库的访问级别。access_level 的数据类型为 smallint,默认值是 1,可以是下列值之一。
值 | 描述 |
---|---|
1 | MULTI_USER |
2 | RESTRICTED_USER |
3 | SINGLE_USER |
有关这些选项含义的更多信息,请参见 ALTER DATABASE。
1(失败)或无(成功)
无
必须在标记为当前主服务器的 SQL Server 实例上运行 sp_change_primary_role。
为完成日志传送角色更改,除运行此过程外,还必须执行某些步骤。有关更多信息,请参见如何设置和执行日志传送角色转变 (Transact-SQL)。
在从日志传送计划中删除数据库事务日志之前备份它。
只有 sysadmin 固定服务器角色成员才能执行 sp_change_primary_role。
下例显示如何从日志传送计划中删除主数据库。
EXEC sp_change_primary_role @db_name = 'db1',
@job_id = '6F9619FF-8B86-D011-B42D-00C04FC964FF',