백업에서 트랜잭션 구독 초기화
적용 대상:SQL Server
일반적으로 트랜잭션 게시에 대한 구독은 스냅샷을 사용하여 초기화하지만 복제 저장 프로시저를 사용하여 백업에서 구독을 초기화할 수도 있습니다. 자세한 내용은 스냅샷 없이 트랜잭션 구독 초기화를 참조하세요.
백업에서 트랜잭션 구독자를 초기화하려면
기존 게시의 경우 게시 데이터베이스의 게시자에서 sp_helppublication(Transact-SQL)를 실행하여 게시가 백업에서 초기화하는 기능을 지원하는지 확인합니다. 결과 집합에서 allow_initialize_from_backup 값을 확인합니다.
값이 1이면 게시에서 이 기능을 지원하는 것입니다.
값이 0이면 게시 데이터베이스의 게시자에서 sp_changepublication(Transact-SQL)를 실행합니다.
@property
에 allow_initialize_from_backup 값,@value
에 true 값을 지정합니다.
새 게시의 경우 게시 데이터베이스의 게시자에서 sp_addpublication(Transact-SQL)를 실행합니다. allow_initialize_from_backup 에 true값을 지정합니다. 자세한 내용은 게시 만들기를 참조하세요.
Warning
구독자 데이터가 누락되는 것을 방지하려면
@allow_initialize_from_backup = N'true'
에서 sp_addpublication 또는 sp_changepublication을 사용할 때 항상@immediate_sync = N'true'
를 사용하세요.BACKUP(Transact-SQL) 문을 사용하여 게시 데이터베이스의 백업을 만듭니다.
RESTORE(Transact-SQL) 문을 사용하여 구독자에서 백업을 복원합니다.
게시 데이터베이스의 게시자에서 저장 프로시저 sp_addsubscription(Transact-SQL)를 실행합니다. 다음 매개 변수를 지정합니다.
@sync_type
- 백업을 사용하여 초기화하는 값입니다.@backupdevicetype
- 백업 디바이스의 유형: 논리 (기본값), 디스크 또는 테이프입니다.@backupdevicename
- 복원에 사용할 논리적 또는 물리적 백업 디바이스입니다.논리 디바이스의 경우 sp_addumpdevice 디바이스를 만드는 데 사용되었을 때 지정된 백업 디바이스의 이름을 지정합니다.
물리적 디바이스의 경우
DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\BACKUP\Mybackup.dat'
또는TAPE = '\\.\TAPE0'
과 같이 전체 경로와 파일 이름을 지정합니다.(옵션)
@password
- 백업 세트를 만들 때 지정한 암호입니다.(선택 사항)
@mediapassword
- 미디어 세트의 형식을 지정할 때 제공된 암호입니다.(선택 사항)
@fileidhint
- 복원할 백업 집합의 식별자입니다. 예를 들어 1을 지정하면 백업 매체에서 첫 번째 백업 집합이 표시되고 2는 두 번째 백업 집합을 나타냅니다.(테이프 디바이스 옵션)
@unload
- 복원이 완료된 후 드라이브에서 테이프를 언로드해야 하는 경우 1(기본값), 언로드하지 않아야 하는 경우 0 값을 지정합니다.
(선택 사항) 끌어오기 구독의 경우 구독 데이터베이스의 구독자에서 sp_addpullsubscription(Transact-SQL) 및 sp_addpullsubscription_agent(Transact-SQL)를 실행합니다. 자세한 내용은 끌어오기 구독 만들기를 참조 하세요.
(선택 사항) 배포 에이전트 시작합니다. 자세한 내용은 끌어오기 구독 동기화 또는 밀어넣기 구독 동기화를 참조하세요.
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기