sp_add_log_shipping_primary_database (Transact-SQL)

Настраивает базу данных-источник журналов вместе с заданием резервного копирования, а также записями локального и удаленного мониторов.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

sp_add_log_shipping_primary_database [ @database = ] 'database', 
[ @backup_directory = ] 'backup_directory', 
[ @backup_share = ] 'backup_share', 
[ @backup_job_name = ] 'backup_job_name', 
[, [ @backup_retention_period = ] backup_retention_period]
[, [ @monitor_server = ] 'monitor_server']
[, [ @monitor_server_security_mode = ] monitor_server_security_mode]
[, [ @monitor_server_login = ] 'monitor_server_login']
[, [ @monitor_server_password = ] 'monitor_server_password']
[, [ @backup_threshold = ] backup_threshold ] 
[, [ @threshold_alert = ] threshold_alert ] 
[, [ @threshold_alert_enabled = ] threshold_alert_enabled ] 
[, [ @history_retention_period = ] history_retention_period ]
[, [ @backup_job_id = ] backup_job_id OUTPUT ]
[, [ @primary_id = ] primary_id OUTPUT]
[, [ @backup_compression = ] backup_compression_option ] 

Аргументы

  • [ @database= ] 'database'
    Имя базы данных-источника доставки журналов. Аргумент database имеет тип sysname, не имеет значения по умолчанию и не может иметь значение NULL.

  • [ @backup_directory= ] 'backup_directory'
    Путь к папке резервного копирования сервера-источника. Аргумент backup_directory имеет тип nvarchar(500), не имеет значения по умолчанию и не может принимать значение NULL.

  • [ @backup_share= ] 'backup_share'
    Сетевой путь к каталогу резервного копирования сервера-источника. Аргумент backup_share имеет тип nvarchar(500), не имеет значения по умолчанию и не может принимать значение NULL.

  • [ @backup_job_name= ] 'backup_job_name'
    Имя задания агента SQL Server на сервере-источнике, которое создает резервную копию в указанную папку резервного копирования. Аргумент backup_job_name имеет тип sysname и не может принимать значение NULL.

  • [ @backup_retention_period= ] backup_retention_period
    Время в минутах, в течение которого файл резервной копии журнала хранится в каталоге резервных копий на сервере-источнике. Аргумент backup_retention_period имеет тип int, не имеет значения по умолчанию и не может принимать значение NULL.

  • [ @monitor_server= ] 'monitor_server'
    Имя сервера мониторинга. Аргумент Monitor_server имеет тип sysname, не имеет значения по умолчанию и не может иметь значение NULL.

  • [ @monitor_server_security_mode= ] monitor_server_security_mode
    Режим безопасности, используемый для подключения к серверу мониторинга.

    1 = проверка подлинности Windows.

    0 = Проверка подлинности SQL Server. Аргумент monitor_server_security_mode имеет тип bit и не может принимать значение NULL.

  • [ @monitor_server_login= ] 'monitor_server_login'
    Имя учетной записи пользователя, используемой для доступа к серверу мониторинга.

  • [ @monitor_server_password= ] 'monitor_server_password'
    Пароль учетной записи пользователя, используемой для доступа к серверу мониторинга.

  • [ @backup_threshold= ] backup_threshold
    Время в минутах, которое должно пройти с момента последнего резервного копирования до возникновения ошибки threshold_alert. Аргумент backup_threshold имеет тип int и значение по умолчанию 60 минут.

  • [ @threshold_alert= ] threshold_alert
    Предупреждение, которое должно быть активизировано при превышении порогового значения резервирования. Аргумент threshold_alert имеет тип int со значением по умолчанию 14420.

  • [ @threshold_alert_enabled= ] threshold_alert_enabled
    Указывает, выдается ли предупреждение по истечении времени backup_threshold. Значение по умолчанию (0) указывает, что это предупреждение отключено и не будет активизироваться. Аргумент threshold_alert_enabled имеет тип bit.

  • [ @history_retention_period= ] history_retention_period
    Время в минутах, в течение которого будут храниться данные журнала. Аргумент history_retention_period имеет тип int и значение по умолчанию NULL. Если не указано иного, будет использоваться значение 14 420.

  • [ @backup_job_id= ] backup_job_id OUTPUT
    Идентификатор задания резервного копирования агента SQL Server на сервере-источнике. Аргумент backup_job_id имеет тип uniqueidentifier и не может принимать значение NULL.

  • [ @primary_id= ] primary_id OUTPUT
    Идентификатор базы данных-источника для конфигурации доставки журналов. Аргумент primary_id имеет тип uniqueidentifier и не может принимать значение NULL.

  • [ @backup_compression = ] backup_compression_option
    Указывает, используется ли сжатие резервной копии в конфигурации доставки журналов. Этот параметр поддерживается только в SQL Server 2008 Enterprise (или более поздней версии).

    0 = отключено. Не сжимать резервные копии журналов.

    1 = включено. Всегда сжимать резервные копии журналов.

    2 = использовать значение параметра конфигурации сервера backup compression default. Это значение по умолчанию.

Значения кодов возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Результирующие наборы

Нет

Замечания

Процедура sp_add_log_shipping_primary_database запускается из базы данных master сервера-источника. Эта хранимая процедура выполняет следующие действия:

  1. создает первичный идентификатор и добавляет запись базы данных-источника в таблицу log_shipping_primary_databases, используя указанные аргументы;

  2. создает задание резервного копирования для базы данных-источника, если она отключена;

  3. устанавливает идентификатор задания резервного копирования в таблице log_shipping_primary_databases равным идентификатору данного задания резервного копирования;

  4. добавляет запись локального монитора в таблицу log_shipping_monitor_primary сервера-источника, используя указанные аргументы;

  5. если сервер мониторинга отличается от сервера-источника, добавляет запись монитора в таблицу log_shipping_monitor_primary на сервере мониторинга, используя указанные параметры.

Разрешения

Эту процедуру могут выполнять только члены предопределенной роли сервера sysadmin.

Примеры

В этом примере база данных База данных AdventureWorks2008R2 добавляется в качестве базы данных-источника в конфигурацию доставки журналов.

DECLARE @LS_BackupJobId AS uniqueidentifier 
DECLARE @LS_PrimaryId AS uniqueidentifier 
EXEC master.dbo.sp_add_log_shipping_primary_database 
@database = N'AdventureWorks' 
,@backup_directory = N'c:\lsbackup' 
,@backup_share = N'\\tribeca\lsbackup' 
,@backup_job_name = N'LSBackup_AdventureWorks' 
,@backup_retention_period = 1440
,@monitor_server = N'rockaway' 
,@monitor_server_security_mode = 1 
,@backup_threshold = 60 
,@threshold_alert = 0 
,@threshold_alert_enabled = 0 
,@history_retention_period = 1440 
,@backup_job_id = @LS_BackupJobId OUTPUT 
,@primary_id = @LS_PrimaryId OUTPUT 
,@overwrite = 1 
,@backup_compression = 0
GO