sp_add_log_shipping_primary_database(Transact-SQL)
적용 대상: SQL Server
백업 작업, 로컬 모니터 레코드 및 원격 모니터 레코드를 포함하여 로그 전달 구성을 위한 주 데이터베이스를 설정합니다.
구문
sp_add_log_shipping_primary_database
[ @database = ] 'database'
, [ @backup_directory = ] N'backup_directory'
, [ @backup_share = ] N'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 = ] N'backup_directory'
주 서버의 백업 폴더 경로입니다. @backup_directory 기본값이 없는 nvarchar(500)이며, 이 값이 될 NULL
수 없습니다.
[ @backup_share = ] N'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 비트이며, 기본값1
은 이고NULL
, 될 수 없습니다.
[ @monitor_server_login = ] 'monitor_server_login'
모니터 서버에 액세스하는 데 사용되는 계정의 사용자 이름입니다.
[ @monitor_server_password = ] 'monitor_server_password'
모니터 서버에 액세스하는 데 사용되는 계정의 암호입니다.
[ @backup_threshold = ] backup_threshold
@threshold_alert 오류가 발생하기 전 마지막 백업 이후의 시간(분)입니다. @backup_threshold 기본값인 60분으로 int입니다.
[ @threshold_alert = ] threshold_alert
백업 임계값이 초과될 때 발생하는 경고입니다. @threshold_alert int이며 기본값은 14,420입니다.
[ @threshold_alert_enabled = ] threshold_alert_enabled
@backup_threshold 초과할 때 경고가 발생하는지 여부를 지정합니다. 기본값인 0은 경고가 비활성화되고 발생하지 않음을 의미합니다. @threshold_alert_enabled 비트입니다.
[ @history_retention_period = ] history_retention_period
기록이 유지되는 시간(분)입니다. @history_retention_period 기본값NULL
인 int입니다. 값 14420이 지정되지 않은 경우 사용됩니다.
[ @backup_job_id = ] backup_job_id OUTPUT
주 서버의 백업 작업과 연결된 SQL Server 에이전트 작업 ID입니다. @backup_job_id uniqueidentifier 형식의 OUTPUT 매개 변수이며 사용할 수 없습니다NULL
.
[ @primary_id = ] primary_id OUTPUT
로그 전달 구성에 대한 주 데이터베이스의 ID입니다. @primary_id uniqueidentifier 형식의 OUTPUT 매개 변수이며 될 수 없습니다NULL
.
[ @backup_compression = ] backup_compression_option
로그 전달 구성에서 백업 압축을 사용하는 지 여부를 지정합니다.
0
:비활성화. 로그 백업을 압축하지 않습니다.1
:사용. 항상 로그 백업을 압축합니다.2
(기본값): 보기 설정을 사용하거나 백업 압축 기본값(서버 구성 옵션)을 구성합니다.
반환 코드 값
0
(성공) 또는 1
(실패).
결과 집합
없음.
설명
sp_add_log_shipping_primary_database
는 주 서버의 master
데이터베이스에서 실행되어야 합니다. 이 저장 프로시저는 다음 함수를 수행합니다.
기본 ID를 생성하고 제공된 인수를 사용하여 테이블
log_shipping_primary_databases
의 주 데이터베이스에 대한 항목을 추가합니다.사용하지 않도록 설정된 주 데이터베이스에 대한 백업 작업을 만듭니다.
항목의 백업 작업 ID를
log_shipping_primary_databases
백업 작업의 작업 ID로 설정합니다.제공된 인수를 사용하여 주 서버의 테이블에
log_shipping_monitor_primary
로컬 모니터 레코드를 추가합니다.모니터 서버가 주 서버
sp_add_log_shipping_primary_database
와 다른 경우 제공된 인수를 사용하여 모니터 서버에 모니터 레코드log_shipping_monitor_primary
를 추가합니다.
사용 권한
sysadmin 고정 서버 역할의 멤버만 이 절차를 실행할 수 있습니다.
예제
다음 예에서는 로그 전달 구성의 주 데이터베이스로 AdventureWorks2022
데이터베이스를 추가합니다.
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