매개 변수가 있는 필터를 사용하여 병합 게시에 대한 파티션 관리

적용 대상:SQL Server

이 항목에서는 SQL Server Management Studio, Transact-SQL 또는 RMO(복제 관리 개체)를 사용하여 SQL Server에서 매개 변수가 있는 필터를 사용하여 병합 게시의 파티션을 관리하는 방법에 대해 설명합니다. 매개 변수가 있는 행 필터를 사용하여 오버랩되지 않는 파티션을 생성할 수 있습니다. 이러한 파티션은 한 구독만 지정된 파티션을 받도록 제한할 수 있습니다. 이러한 경우 많은 수의 구독자가 많은 파티션을 생성하므로 분할된 스냅샷 동일한 수의 파티션이 필요합니다. 자세한 내용은 매개 변수가 있는 행 필터를 참조하십시오.

항목 내용

시작하기 전에

권장 사항

  • 권장되는 복제본(replica) 토폴로지를 스크립션하는 경우 게시 스크립트에는 데이터 파티션을 만들기 위한 저장 프로시저 호출이 포함됩니다. 스크립트는 만든 파티션에 대한 참조와 필요한 경우 하나 이상의 파티션을 다시 만드는 방법을 제공합니다. 자세한 내용은 복제 스크립팅을 참조 하세요.

  • 게시에 오버랩되지 않는 파티션이 있는 구독을 생성하는 매개 변수가 있는 필터가 있고 특정 구독이 손실되어 다시 만들어야 하는 경우 구독된 파티션을 제거하고 구독을 다시 만든 다음 파티션을 다시 만들어야 합니다. 자세한 내용은 매개 변수가 있는 행 필터를 참조하십시오. 복제에서는 게시 만들기 스크립트가 생성될 때 기존 구독자 파티션에 대한 만들기 스크립트를 생성합니다. 자세한 내용은 복제 스크립팅을 참조 하세요.

SQL Server Management Studio 사용

게시 속성 - <게시> 대화 상자의 데이터 파티션 페이지에서 파티션 을 관리합니다. 이 대화 상자에 액세스하는 방법은 게시 속성 보기 및 수정을 참조하세요. 이 페이지에서는 파티션을 만들고 삭제할 수 있습니다. 구독자가 스냅샷 생성 및 배달을 시작하고, 하나 이상의 파티션에 대한 스냅샷 생성하고, 스냅샷 클린 수 있습니다.

파티션을 만들려면

  1. 게시 속성 - <게시> 대화 상자의 데이터 파티션 페이지에서 추가를 클릭합니다.

  2. 데이터 파티션 추가 대화 상자에서 만들려는 파티션과 연결된 HOST_NAME() 및/또는 SUSER_SNAME() 값의 값을 입력합니다.

  3. 필요에 따라 스냅샷 새로 고치는 일정을 지정합니다.

    1. 다음 시간에 이 파티션이 실행되도록 스냅샷 에이전트 예약을 선택합니다.

    2. 기본으로 제공되는 스냅샷 새로 고침 일정을 그대로 적용하거나 변경 을 클릭하여 다른 일정을 지정합니다.

  4. 확인을 선택합니다.

파티션을 삭제하려면

  1. 데이터 파티션 페이지에서 그리드에서 파티션을 선택합니다.

  2. 삭제를 클릭합니다.

구독자가 스냅샷 생성 및 배달을 시작하도록 허용하려면

  1. 데이터 파티션 페이지에서 파티션을 자동으로 정의하고 새 구독자가 동기화를 시도할 때 필요한 경우 스냅샷 생성합니다.

  2. 확인을 선택합니다.

파티션에 대한 스냅샷 생성하려면

  1. 데이터 파티션 페이지에서 그리드에서 파티션을 선택합니다.

  2. 이제 선택한 스냅샷 생성을 클릭합니다.

파티션에 대한 스냅샷 클린

  1. 데이터 파티션 페이지에서 그리드에서 파티션을 선택합니다.

  2. 기존 스냅샷 정리를 클릭합니다.

Transact-SQL 사용

매개 변수가 있는 필터를 사용하여 게시를 더 잘 관리하려면 복제본(replica)tion 저장 프로시저를 사용하여 기존 파티션을 프로그래밍 방식으로 열거할 수 있습니다. 기존 파티션을 만들고 삭제할 수도 있습니다. 기존 파티션에 대한 다음 정보를 가져올 수 있습니다.

  • 파티션 필터링 방법(SUSER_SNAME(Transact-SQL) 또는 HOST_NAME(Transact-SQL) 사용).

  • 분할된 스냅샷을 생성하는 작업의 이름

  • 분할된 스냅샷 작업이 마지막으로 실행된 시간입니다.

두 부분으로 구성된 스냅샷의 두 번째 부분은 새 구독이 초기화될 때 요청에 따라 생성될 수 있지만, 아래의 절차를 사용하면 이 스냅샷이 생성되는 방식을 제어하고 가장 편리할 때 이 스냅샷을 미리 생성할 수 있습니다. 자세한 내용은 매개 변수가 있는 필터를 사용하여 병합 게시에 대한 스냅샷을 참조 하세요.

기존 파티션에 대한 정보를 보려면

  1. 게시 데이터베이스의 게시자에서 sp_helpmergepartition(Transact-SQL)를 실행합니다. 에 대한 게시의 이름을 지정합니다 @publication. (선택 사항) 단일 필터링 기준에 따라 정보만 지정 @suser_sname 하거나 @host_name 반환합니다.

새 파티션을 정의하고 분할된 새 스냅샷 생성하려면

  1. 게시 데이터베이스의 게시자에서 sp_addmergepartition(Transact-SQL)를 실행합니다. 게시 이름과 다음 중 하나에 대한 @publication파티션을 정의하는 매개 변수가 있는 값을 지정합니다.

  2. 이 새 파티션에 대해 매개 변수가 있는 스냅샷을 만들고 초기화합니다. 자세한 내용은 매개 변수가 있는 필터로 병합 게시에 대한 스냅샷 만들기을 참조하세요.

파티션을 삭제하려면

  1. 게시 데이터베이스의 게시자에서 sp_dropmergepartition(Transact-SQL)를 실행합니다. 게시 이름과 다음 중 하나에 대한 @publication 파티션을 정의하는 매개 변수가 있는 값을 지정합니다.

    또한 파티션에 대한 스냅샷 작업 및 스냅샷 파일이 제거됩니다.

RMO(복제 관리 개체) 사용

매개 변수가 있는 필터를 사용하여 게시를 더 잘 관리하려면 프로그래밍 방식으로 새 구독자 파티션을 만들고, 기존 구독자 파티션을 열거하고, RMO(복제 관리 개체)를 사용하여 구독자 파티션을 삭제할 수 있습니다. 구독자 파티션을 만드는 방법에 대한 자세한 내용은 매개 변수가 있는 필터를 사용하여 병합 게시에 대한 스냅샷 만들기를 참조하세요. 기존 파티션에 대한 다음 정보를 가져올 수 있습니다.

  • 파티션의 기반이 되는 값 및 필터링 함수입니다.

  • 구독자에 대해 매개 변수가 있는 스냅샷을 생성하는 작업의 이름

  • 매개 변수가 있는 스냅샷 작업이 마지막으로 실행된 시간입니다.

기존 파티션에 대한 정보를 보려면

  1. ServerConnection 클래스를 사용하여 게시자 연결을 만듭니다.

  2. MergePublication 클래스의 인스턴스를 만듭니다. 게시에 Name 대한 속성 및 DatabaseName 속성을 설정하고 1단계에서 만든 속성으로 ServerConnection 설정합니다ConnectionContext.

  3. LoadProperties 메서드를 호출하여 개체 속성을 가져옵니다. 이 메서드가 false를 반환하는 경우 2단계의 게시 속성이 잘못 정의되었거나 게시가 존재하지 않습니다.

  4. 메서드를 EnumMergePartitions 호출하고 결과를 개체 배열 MergePartition 에 전달합니다.

  5. 배열의 각 MergePartition 개체에 대해 원하는 속성을 가져옵니다.

기존 파티션을 삭제하려면

  1. ServerConnection 클래스를 사용하여 게시자 연결을 만듭니다.

  2. MergePublication 클래스의 인스턴스를 만듭니다. 게시에 Name 대한 속성 및 DatabaseName 속성을 설정하고 1단계에서 만든 속성으로 ServerConnection 설정합니다ConnectionContext.

  3. LoadProperties 메서드를 호출하여 개체 속성을 가져옵니다. 이 메서드가 false를 반환하는 경우 2단계의 게시 속성이 잘못 정의되었거나 게시가 존재하지 않습니다.

  4. 메서드를 EnumMergePartitions 호출하고 결과를 개체 배열 MergePartition 에 전달합니다.

  5. 배열의 각 MergePartition 개체에 대해 파티션을 삭제할지 여부를 결정합니다. 이 결정은 일반적으로 속성 또는 속성의 DynamicFilterLogin 값을 기반으로 합니다 DynamicFilterHostName .

  6. RemoveMergePartition 2단계에서 개체의 메서드를 MergePublication 호출합니다. 5단계에서 만든 MergePartition 개체를 전달합니다.

  7. 삭제된 각 파티션에 대해 6단계를 반복합니다.

참고 항목

매개 변수가 있는 행 필터
매개 변수가 있는 필터를 사용하여 병합 게시에 대한 스냅샷