다음을 통해 공유


SQL Server 복제의 스키마 옵션 지정

적용 대상: SQL Server Azure SQL Managed Instance

이 항목에서는 SQL Server 관리 스튜디오 또는 Transact-SQL을 사용하여 SQL Server에서 스키마 옵션을 지정하는 방법에 대해 설명합니다. 테이블 또는 뷰를 게시하는 경우 게시된 개체에 대해 복제되는 개체 작성 옵션을 제어할 수 있습니다. 아티클을 만들 때 이러한 옵션을 설정할 수 있으며 나중에 변경할 수도 있습니다. 아티클에 대해 이 옵션을 명시적으로 지정하지 않으면 기본 옵션 집합이 정의됩니다.

참고 항목

복제 저장 프로시저를 사용할 때의 기본 스키마 옵션은 SQL Server Management Studio를 사용하여 문서를 추가할 때의 기본 옵션과 다를 수 있습니다.

항목 내용

시작하기 전에

제한 사항

  • 게시를 만든 후 스키마 옵션을 변경하는 경우 새 스냅샷을 생성해야 합니다.

권장 사항

SQL Server Management Studio 사용

제약 조건 및 트리거를 구독자에 복사할지 여부 등의 스키마 옵션을 아티클 속성 - <아티클> 대화 상자의 속성 탭에 지정합니다. 이 탭은 새 게시 마법사 및 게시 속성 - <게시> 대화 상자에서 사용할 수 있습니다. 마법사 사용 및 대화 상자 액세스에 대한 자세한 내용은 게시 만들기게시 속성 보기 및 수정을 참조하세요.

스키마 옵션을 지정하려면

  1. 새 게시 마법사의 아티클 페이지 또는 게시 속성 - <게시>> 대화 상자에서 아티클을 선택하고 아티클 속성을 클릭합니다.

  2. 적용할 아티클 스키마 옵션 변경 내용을 선택합니다.

    • 강조 표시된 <ObjectType> 아티클의 속성 설정을 클릭하여 아티클 속성 - <ObjectName> 대화 상자를 시작합니다. 이 대화 상자에서 변경한 속성은 아티클 페이지의 개체 창에 강조 표시된 개체에만 적용됩니다.

    • 모든 <ObjectType> 아티클의 속성 설정을 클릭하여 모든 <ObjectType> 아티클에 대한 속성 대화 상자를 시작합니다. 이 대화 상자에서 변경한 속성은 아티클 페이지의 개체 창에 있는 해당 형식의 모든 개체에 적용됩니다(아직 게시하도록 선택되지 않은 개체 포함).

      참고 항목

      모든 <ObjectType> 아티클의 속성 대화 상자에서 변경한 속성은 아티클 속성 - <ObjectName> 대화 상자에서 이전에 수행한 내용을 재정의합니다. 예를 들어 개체 형식의 모든 아티클에 대해 여러 기본값을 설정하지만 개별 개체에 대한 일부 속성을 설정하려면 먼저 모든 아티클의 기본값을 설정합니다. 그런 다음 개별 개체에 대한 속성을 설정합니다.

  3. 아티클 속성 - <아티클> 대화 상자의 속성 탭에 있는 구독자 및 대상 개체의 개체 및 설정 복사 섹션에서 옵션에 대한 값을 지정합니다.

  4. 필요한 경우 속성을 수정한 다음 확인을 클릭합니다.

  5. 게시물 속성 - <게시물> 대화 상자에서 제공되는 경우 확인을 클릭하여 저장하고 대화 상자를 닫습니다.

Transact-SQL 사용

스키마 옵션은 하나 이상의 옵션에 대한 |(비트 OR) 결과인 16진수 값으로 지정됩니다. 자세한 내용은 sp_addarticlesp_addmergearticle을 참조하세요.

참고 항목

비트 연산을 수행하기 전에 스키마 옵션 값을 binary에서 int로 변환해야 합니다. 자세한 내용은 CAST 및 CONVERT(Transact-SQL)를 참조하세요.

스냅샷 또는 트랜잭션 게시의 아티클을 정의할 때 스키마 옵션을 지정하려면

  1. 게시 데이터베이스의 게시자에서 sp_addarticle을 실행합니다. @publication에 아티클이 속한 게시의 이름, @article에 아티클의 이름, @source_object에 게시되는 데이터베이스 개체, @type에 데이터베이스 개체의 유형, @schema_option에 하나 이상의 스키마 옵션에 대한 |(비트 OR) 결과를 지정합니다. 자세한 내용은 문서 정의를 참조하세요.

병합 게시에 대한 아티클을 정의할 때 스키마 옵션을 지정하려면

  1. 게시 데이터베이스의 게시자에서 sp_addmergearticle을 실행합니다. @publication에 아티클이 속한 게시의 이름, @article에 아티클의 이름, @source_object에 게시되는 데이터베이스 개체, @schema_option에 하나 이상의 스키마 옵션에 대한 |(비트 OR) 결과를 지정합니다. 자세한 내용은 문서 정의를 참조하세요.

스냅샷 또는 트랜잭션 게시의 기존 아티클에 대한 스키마 옵션을 변경하려면

  1. 게시 데이터베이스의 게시자에서 sp_helparticle을 실행합니다. 아티클이 속한 @publication 게시의 이름과 @article 아티클 이름을 지정합니다. 결과 집합에서 schema_option 열 값을 확인합니다.

  2. 1단계의 값과 원하는 스키마 옵션 값을 사용하여 &(Bitwise AND) 작업을 실행하여 옵션이 설정되었는지 확인합니다.

    • 결과가 0이면 옵션이 설정되지 않은 것입니다.

    • 결과가 옵션 값이면 옵션이 이미 설정되어 있습니다.

  3. 옵션이 설정되지 않은 경우, 1단계의 값과 원하는 스키마 옵션 값을 사용하여 | (Bitwise OR) 작업을 실행합니다.

  4. 게시 데이터베이스의 게시자에서 sp_changearticle을 실행합니다. @publication에 아티클이 속한 게시의 이름, @article에 아티클의 이름, @propertyschema_option값, @value에 3단계의 16진수 결과를 지정합니다.

  5. 스냅샷 에이전트 실행하여 새 스냅샷을 생성합니다. 자세한 내용은 초기 스냅샷 만들기 및 적용을 참조하세요.

병합 게시의 기존 아티클에 대한 스키마 옵션을 변경하려면

  1. 게시 데이터베이스의 게시자에서 sp_helpmergearticle을 실행합니다. 아티클이 속한 @publication 게시의 이름과 @article 아티클 이름을 지정합니다. 결과 집합에서 schema_option 열 값을 확인합니다.

  2. 1단계의 값과 원하는 스키마 옵션 값을 사용하여 &(Bitwise AND) 작업을 실행하여 옵션이 설정되었는지 확인합니다.

    • 결과가 0이면 옵션이 설정되지 않은 것입니다.

    • 결과가 옵션 값이면 옵션이 이미 설정되어 있습니다.

  3. 옵션이 설정되지 않은 경우, 1단계의 값과 원하는 스키마 옵션 값을 사용하여 | (Bitwise OR) 작업을 실행합니다.

  4. 게시 데이터베이스의 게시자에서 sp_changemergearticle을 실행합니다. @publication에 아티클이 속한 게시의 이름, @article에 아티클의 이름, @propertyschema_option값, @value에 3단계의 16진수 결과를 지정합니다.

  5. 스냅샷 에이전트 실행하여 새 스냅샷을 생성합니다. 자세한 내용은 초기 스냅샷 만들기 및 적용을 참조하세요.

참고 항목

데이터 및 데이터베이스 개체 게시
트랜잭션 복제를 위한 아티클 옵션