sp_copysubscription(Transact-SQL)

중요 정보중요

연결 가능한 구독 기능은 더 이상 사용되지 않으며 후속 릴리스에서 제거될 예정입니다. 새로운 개발 작업에서는 이 기능을 사용하면 안 됩니다. 매개 변수가 있는 필터를 사용하여 분할된 병합 게시의 경우 구독을 대량으로 초기화하는 작업을 간단하게 만들어 주는 분할된 스냅숏의 새 기능을 사용하는 것이 좋습니다. 자세한 내용은 매개 변수가 있는 필터를 사용하는 병합 게시의 스냅숏를 참조하십시오. 분할되지 않은 게시의 경우 백업을 사용하여 구독을 초기화할 수 있습니다. 자세한 내용은 스냅숏 없이 병합 구독 초기화스냅숏 없이 트랜잭션 구독 초기화를 참조하십시오.

끌어오기 구독만 있고 밀어넣기 구독이 없는 구독 데이터베이스를 복사합니다. 하나의 파일로 구성된 데이터베이스만 복사할 수 있습니다. 이 저장 프로시저는 구독 데이터베이스의 구독자에서 실행됩니다.

항목 링크 아이콘Transact-SQL 구문 표기 규칙

구문

sp_copysubscription [ @filename = ] 'file_name'
    [ , [ @temp_dir = ] 'temp_dir' ]
    [ , [ @overwrite_existing_file = ] overwrite_existing_file]

인수

  • [ @filename = ] 'file_name'
    파일 이름을 포함한 전체 경로를 지정하는 문자열이며 데이터 파일(.mdf)의 사본을 저장할 위치에 해당합니다. file name은 **nvarchar(260)**이며 기본값은 없습니다.

  • [ @temp_dir=] 'temp_dir'
    임시 파일이 포함된 디렉터리의 이름입니다. temp_dir은 **nvarchar(260)**이며 기본값은 NULL입니다. NULL인 경우에는 Microsoft SQL Server의 기본 데이터 디렉터리를 사용합니다. 디렉터리에는 모든 구독자 데이터베이스 파일을 저장할 수 있는 충분한 공간이 있어야 합니다.

  • [ @overwrite_existing_file=] 'overwrite_existing_file'
    @filename에서 지정한 것과 동일한 이름의 기존 파일이 있을 때 덮어쓸지 여부를 지정하는 선택적인 부울 플래그입니다. overwrite_existing_file은 bit이며 기본값은 0입니다. 1인 경우 @filename에서 지정한 파일로 덮어씁니다. 0인 경우 동일한 이름의 파일이 있으면 저장 프로시저가 실패하며 파일을 덮어쓰지 않습니다.

반환 코드 값

0(성공) 또는 1(실패)

주의

sp_copysubscription은 모든 유형의 복제에 사용되며 구독자에 스냅숏을 적용하는 것 대신 구독 데이터베이스를 파일로 복사합니다. 데이터베이스는 반드시 끌어오기 구독만을 지원하도록 구성되어야 합니다. 적절한 권한을 가진 사용자는 구독 데이터베이스를 복사할 수 있으며, 그런 다음 구독 파일(.msf)을 다른 구독자가 구독으로 사용할 수 있게끔 전자 메일로 보내거나 복사하거나 전송할 수 있습니다.

복사할 구독 데이터베이스의 크기는 2GB 미만이어야 합니다.

sp_copysubscription은 클라이언트 구독을 가진 데이터베이스에 대해서만 지원되며 데이터베이스에 서버 구독이 있는 경우에는 실행할 수 없습니다.

사용 권한

sysadmin 고정 서버 역할의 멤버만 sp_copysubscription을 실행할 수 있습니다.