Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

증상

Microsoft SQL Server 2008 및 이후 버전의 SQL Server에서 병합 복제를 동기화하는 동안 병합 에이전트가 실패할 수 있습니다. 또한 다음과 같은 오류 메시지가 나타납니다.

병합 에이전트는 보존 기반 메타데이터 정리가 아직 게시자에게 전송되지 않은 변경 내용에 대해 구독자에서 메타데이터를 삭제했다는 것을 검색한 후 실패했습니다. 업로드 하지 않고 구독을 다시 초기화 해야 합니다. (출처: MSSQL_REPL, 오류 번호: MSSQL_REPL-214719401) 도움말: http://help/MSSQL_REPL-2147199401

이 문제는 여러 가지 이유로 발생할 수 있습니다. 여기에는 특정 상황에서 예상되는 많은 이유가 포함됩니다. 예기치 않게 이 오류가 발생했는지 확인하려면 "원인" 절에 설명된 메타데이터 세부 정보를 검사합니다.

원인

이 문제의 원인은 구독자의 다음 시스템 테이블에서 찾을 수 있습니다.

  • dbo.sysMergeSubscriptions

  • dbo.MsMerge_Genhistory

병합 에이전트가 더 이상 동기화되지 않았는지 확인합니다. 그런 다음 다음 쿼리를 실행하고 결과를 검사합니다.

구독자DB.dbo.sysMergeSubscriptions에서 전송을 선택 pubid = subid 및 sentgen이 null이 아닌 경우 Query results sentgen 열은 구독자가 게시자에게 보낸 가장 오래된 변경 그룹을 표시합니다. 여러 값이 반환되는 경우 dbo.sysMergeSubscriptions 테이블의 다른 열을 검사하여 올바른 게시에 대한 메타데이터를 보고 있는지 확인합니다. 그런 다음 다음 쿼리에서 이 쿼리가 반환하는 값을 사용합니다.

세대 >= 세대별로 sentgen_value 순서를 생성 >= 가입자DB.dbo.MSmerge_genhistory 에서 상위 20 * 선택쿼리의 출력은 다음과 유사해야 Query result by generation 합니다.

  • 첫 번째 행의 생성 열의 값은 이전 쿼리의 sentgen 값보다 약간 큽습니다.

  • genstatus 열의 값은 4입니다.

  • 변경 카운트 열의 값은 0입니다.

참고 사항 첫 번째 행의 coldate 열 값은 일반적으로 다른 행의 해당 열 값보다 훨씬 오래됩니다.

해결 방법

이 문제를 해결하려면 오류를 생성한 구독자를 다시 초기화합니다. 일부 시나리오에서는 전체 초기화 없이 이 문제를 해결할 수 있습니다. 가능한 해결 방법을 보려면 Microsoft 고객 지원 서비스에 문의하십시오. 이 문제가 나중에 발생하지 않도록 하려면 SQL Server 버전에 따라 다음 수정 사항 중 하나를 적용합니다.

누적 업데이트 정보

SQL Server 2008

SQL Server 2008에는 이 문제에 대한 수정 프로그램이 없습니다.

SQL Server 2008 R2 서비스 팩 2

이 문제에 대한 수정 프로그램은 누적 업데이트 3에서 처음 릴리스되었습니다. SQL Server 2008 R2 서비스 팩 2에 대한 이 누적 업데이트 패키지를 가져오는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 봅니다.

SQL Server 2008 R2 서비스 팩 2에 대한 2754552 누적 업데이트 패키지 3참고 사항 빌드가 누적되므로 각 새 수정 릴리스에는 이전 SQL Server 2008 R2 서비스 팩 2 수정 릴리스에 포함된 모든 핫픽스와 모든 보안 수정 사항이 포함되어 있습니다. 이 핫픽스가 포함된 최신 수정 릴리스를 적용하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 봅니다.

2730301 SQL Server 2008 R2 서비스 팩 2가 릴리스된 후 릴리스된 SQL Server 2008 R2 빌드

SQL Server 2012

이 문제에 대한 수정 프로그램은 누적 업데이트 4에서 처음 릴리스되었습니다. SQL Server 2012에 대한 이 누적 업데이트 패키지를 가져오는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 봅니다.

SQL Server 2012에 대한 2758687 누적 업데이트 패키지 4참고 사항 빌드가 누적되므로 각 새 수정 릴리스에는 이전 SQL Server 2012 수정 릴리스에 포함된 모든 핫픽스와 모든 보안 수정 사항이 포함되어 있습니다. 이 핫픽스가 포함된 최신 수정 릴리스를 적용하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 봅니다.

2692828 SQL Server 2012 릴리스 후 릴리스된 SQL Server 2012 빌드

SQL Server 2008 R2 서비스 팩 1

이 문제에 대한 수정 프로그램은 누적 업데이트 8에서 처음 릴리스되었습니다. SQL Server 2008 R2 서비스 팩 1에 대한 이 누적 업데이트 패키지를 가져오는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 봅니다.

SQL Server 2008 R2 SP1의 누적 업데이트 패키지 8 2723743참고 사항 빌드가 누적되므로 각 새 수정 릴리스에는 이전 SQL Server 2008 R2 서비스 팩 1 수정 릴리스에 포함된 모든 핫픽스와 모든 보안 수정 사항이 포함되어 있습니다. 이 핫픽스가 포함된 최신 수정 릴리스를 적용하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 봅니다.

2567616 SQL Server 2008 R2 SP1 릴리스 후 릴리스된 SQL Server 2008 R2 빌드

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×