sp_change_log_shipping_secondary_database (Transact-SQL)

适用范围:SQL Server

更改辅助数据库设置。

Transact-SQL 语法约定

语法

sp_change_log_shipping_secondary_database
    [ @secondary_database = ] N'secondary_database'
    [ , [ @restore_delay = ] restore_delay ]
    [ , [ @restore_all = ] restore_all ]
    [ , [ @restore_mode = ] restore_mode ]
    [ , [ @disconnect_users = ] disconnect_users ]
    [ , [ @block_size = ] block_size ]
    [ , [ @buffer_count = ] buffer_count ]
    [ , [ @max_transfer_size = ] max_transfer_size ]
    [ , [ @restore_threshold = ] restore_threshold ]
    [ , [ @threshold_alert = ] threshold_alert ]
    [ , [ @threshold_alert_enabled = ] threshold_alert_enabled ]
    [ , [ @history_retention_period = ] history_retention_period ]
    [ , [ @ignoreremotemonitor = ] ignoreremotemonitor ]
[ ; ]

参数

[ @secondary_database = ] N'secondary_database'

辅助服务器上的数据库名称。 @secondary_database为 sysname,无默认值。

[ @restore_delay = ] restore_delay

辅助服务器在还原给定备份文件之前等待的时间(分钟)。 @restore_delayint,默认值 0为 ,不能 NULL

[ @restore_all = ] restore_all

如果设置为 1,则辅助服务器会在还原作业运行时还原所有可用的事务日志备份。 否则,辅助服务器将在还原一个文件后停止。 @restore_all的,不能 NULL

[ @restore_mode = ] restore_mode

辅助数据库的还原模式。 @restore_mode的,不能 NULL

  • 0 = 使用 NORECOVERY. 还原日志。
  • 1 = 使用 STANDBY. 还原日志。

[ @disconnect_users = ] disconnect_users

如果设置为1/>,则执行还原操作时,用户与辅助数据库断开连接。 @disconnect_users的,默认值 0为,不能 NULL

[ @block_size = ] block_size

用作备份设备的块大小(字节)。 @block_size为 int,默认值为 -1.

[ @buffer_count = ] buffer_count

备份或还原操作使用的缓冲区总数。 @buffer_count为 int,默认值为 -1.

[ @max_transfer_size = ] max_transfer_size

SQL Server 向备份设备发出的最大输入或输出请求的大小(以字节为单位)。 @max_transfer_size为 int,默认值为 NULL.

[ @restore_threshold = ] restore_threshold

两次还原操作之间允许的间隔时间(分钟),一旦超过此值,就会生成警报。 @restore_threshold是 int,不能NULL

[ @threshold_alert = ] threshold_alert

超过还原阈值时引发的警报。 @threshold_alert为 int,默认值为 14421.

[ @threshold_alert_enabled = ] threshold_alert_enabled

指定在超出@restore_threshold是否引发警报。

  • 1 = 已启用
  • 0 = 已禁用。

@threshold_alert_enabled是的,不能NULL

[ @history_retention_period = ] history_retention_period

保留历史记录的时间长度(以分钟为单位)。 @history_retention_period为 int,默认值为 1440.

[ @ignoreremotemonitor = ] ignoreremotemonitor

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

返回代码值

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

结果集

无。

注解

sp_change_log_shipping_secondary_database 必须从 master 辅助服务器上的数据库运行。 此存储过程执行以下步骤:

  1. 根据需要更改记录中的 log_shipping_secondary_database 设置。

  2. 如有必要,使用提供的参数更改 log_shipping_monitor_secondary 辅助服务器上的本地监视器记录。

权限

只有 sysadmin 固定服务器角色的成员才能运行此过程。

示例

此示例演示如何使用 sp_change_log_shipping_secondary_database 更新数据库的 LogShipAdventureWorks辅助数据库参数。

EXEC master.dbo.sp_change_log_shipping_secondary_database
    @secondary_database = 'LogShipAdventureWorks',
    @restore_delay = 0,
    @restore_all = 1,
    @restore_mode = 0,
    @disconnect_users = 0,
    @threshold_alert = 14420,
    @threshold_alert_enabled = 1,
    @history_retention_period = 14420;