FIX: 병합 복제 보상 변경 프로세스 사용자 제어 가능

기술 자료 번역 기술 자료 번역
기술 자료: 828637 - 이 문서가 적용되는 제품 보기.
이 문서가 보관되었습니다. "그대로" 제공되었으며, 업데이트가 되지 않을 것입니다.
모두 확대 | 모두 축소

이 페이지에서

현상

병합 복제를 사용할 때 병합 에이전트 삽입 변경 업데이트 변경 또는 삭제 변경할 대상 복제 게시자 또는 구독자에서 기본 키 위반 등 다양한 이유로 적용할 수 있는 경우 동기화 오류가 발생할 수 있습니다. 병합 에이전트가 실패한 변경 내용을 원본 복제 데이터베이스를 보상 변경 항상 보냅니다. 병합 에이전트가 데이터 모든 복제 데이터베이스에서 convergent 일관된 상태로 유지되도록 하려면 보상 변경 프로세스를 실행합니다. 예: 기본 키 위반 오류가 발생하면 보상 변경 내용 없이 데이터 복제본 간에 다를 수 있습니다. 비-수렴 데이터 복제 데이터베이스 간에 데이터의 다를 경우 발생합니다.

이 핫픽스 전에 보상 변경 프로세스를 제어할 수 있도록 방법이 없었습니다. 보상 변경 프로세스는 병합 에이전트가 내부적으로 처리되었는지. 이 프로세스는 병합 에이전트가 내부적으로 처리되었는지 때문에 특정 충돌이 발생한 원인을 해결하려면 어려웠습니다. 또한 충돌하는 행을 에서 삭제 또는 모든 복제본에 취소할 때문에 행 데이터는 전체 토폴로지에서가 제거됩니다. 이러한 문제를 해결하기 위해 Microsoft는 새 문서에서는 수준 속성을 사용자가 보상 변경 프로세스를 제어할 수 있도록 복제 병합 추가했습니다.

해결 방법

서비스 팩 정보

이 문제를 해결하려면 Microsoft SQL Server 2000의 최신 서비스 팩을 구하십시오. 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
290211최신 SQL Server 2000 서비스 팩을 구하는 방법

핫픽스 정보

이 핫픽스의 영어 버전은 파일 특성을 가집니다 (또는 이상) 다음 표에. 이러한 파일의 시간과 날짜는 UTC (협정 세계시) 로 나열됩니다. 파일 정보에서는 현지 시간으로 변환됩니다. UTC와 로컬 시간의 차이를 알려면 제어판의 날짜 및 시간 도구에서 표준 시간대 탭을 사용하십시오.
   Date         Time   Version            Size    File name
   ----------------------------------------------------------------------
   31-May-2003  18:45  2000.80.818.0      78,400  Console.exe      
   25-Jun-2003  01:01  2000.80.818.0      33,340  Dbmslpcn.dll     
   25-Apr-2003  02:12                    786,432  Distmdl.ldf
   25-Apr-2003  02:12                  2,359,296  Distmdl.mdf
   30-Jan-2003  01:55                        180  Drop_repl_hotfix.sql
   26-Aug-2003  20:16  2000.80.854.0     528,960  Dtspump.dll      
   23-Jun-2003  22:40  2000.80.837.0   1,557,052  Dtsui.dll        
   23-Jun-2003  22:40  2000.80.837.0     639,552  Dtswiz.dll       
   24-Apr-2003  02:51                    747,927  Instdist.sql
   03-May-2003  01:56                      1,581  Inst_repl_hotfix.sql
   08-Feb-2003  06:40  2000.80.765.0      90,692  Msgprox.dll      
   01-Apr-2003  02:07                      1,873  Odsole.sql
   05-Apr-2003  01:46  2000.80.800.0      62,024  Odsole70.dll     
   07-May-2003  20:41  2000.80.819.0      25,144  Opends60.dll     
   02-Apr-2003  21:48  2000.80.796.0      57,904  Osql.exe         
   02-Apr-2003  23:15  2000.80.797.0     279,104  Pfutil80.dll     
   04-Aug-2003  18:17                    550,780  Procsyst.sql
   22-May-2003  22:57                     19,195  Qfe469571.sql
   06-Sep-2003  01:36                  1,090,932  Replmerg.sql
   06-Sep-2003  07:18  2000.80.858.0     221,768  Replprov.dll     
   06-Sep-2003  07:18  2000.80.858.0     307,784  Replrec.dll      
   06-Sep-2003  00:00                  1,087,150  Replsys.sql
   13-Aug-2003  16:28                    986,603  Repltran.sql
   29-Jul-2003  20:13  2000.80.819.0     492,096  Semobj.dll       
   31-May-2003  18:27  2000.80.818.0     172,032  Semobj.rll
   05-Aug-2003  21:06                    127,884  Sp3_serv_uni.sql
   01-Jun-2003  01:01  2000.80.818.0   4,215,360  Sqldmo.dll       
   07-Apr-2003  17:44                     25,172  Sqldumper.exe    
   19-Mar-2003  18:20  2000.80.789.0      28,672  Sqlevn70.rll
   02-Jul-2003  00:18  2000.80.834.0     180,736  Sqlmap70.dll     
   03-Sep-2003  02:56  2000.80.857.0     188,992  Sqlmmc.dll       
   02-Sep-2003  23:03  2000.80.857.0     479,232  Sqlmmc.rll
   08-Feb-2003  06:40  2000.80.765.0      57,920  Sqlrepss.dll     
   06-Sep-2003  07:19  2000.80.858.0   7,598,161  Sqlservr.exe     
   25-Jul-2003  21:44  2000.80.845.0     590,396  Sqlsort.dll      
   08-Feb-2003  06:40  2000.80.765.0      45,644  Sqlvdi.dll       
   25-Jun-2003  01:01  2000.80.818.0      33,340  Ssmslpcn.dll     
   01-Jun-2003  01:01  2000.80.818.0      82,492  Ssnetlib.dll     
   01-Jun-2003  01:01  2000.80.818.0      25,148  Ssnmpn70.dll     
   01-Jun-2003  01:01  2000.80.818.0     158,240  Svrnetcn.dll     
   31-May-2003  18:59  2000.80.818.0      76,416  Svrnetcn.exe     
   30-Apr-2003  23:52  2000.80.816.0      45,132  Ums.dll          
   02-Jul-2003  00:19  2000.80.834.0      98,816  Xpweb70.dll      

참고 파일 종속 관계로 인해 가장 최근의 핫픽스나 이러한 파일이 포함된 기능을 추가 파일이 들어 있습니다.

현재 상태

Microsoft 문제는 이 문서의 시작 부분에 나열한 제품에서 문제를 확인했습니다.이 문제는 Microsoft SQL Server 2000 서비스 팩 4에서 처음 수정되었습니다.

추가 정보

이 핫픽스는 병합 게시에 대해 새 문서에서는 수준 compensate_for_errors 속성을 추가합니다. 이 속성은 true 또는 false 로 설정할 수 있습니다. 이 속성의 기본값은 true 입니다. 기본 설정은 모든 이전 릴리스 및 서비스 팩이 있는 최대한 보상 변경 발급하도록 병합 복제가 계속 의미합니다. 이 속성을 true 로 및 삽입 변경 업데이트 변경 설정되어 있거나 (기본 키 위반 게시자 또는 구독자, 한 예를 발생) 여러 가지 이유로 삭제 변경할 대상 복제 적용할 수 없습니다 병합 에이전트는 보상 변경 원본 복제 데이터베이스에 변경 내용을 보냅니다.

compensate_for_errors 속성이 false로 설정되어 있고 대상 복제 변경을 적용할 수 없습니다 보상 동작 발급되지 및 데이터베이스 관리자는 오류 조건을 해결하는 때까지 충돌로 실패한 변경 상태를 유지합니다. 병합 에이전트가 행 오류 조건이 해결될 때까지 실행할 각 후속 동기화 시 복제 시도합니다.

하위 특히, 이 핫픽스가 설치되어 있지 않은 끌어오기 구독자, 구독 에이전트를 계속 compensate_for_errors 속성은 게시자에서 이 핫픽스를 설치하고 compensate_for_errors 속성이 게시자의 false로 설정된 경우에도 true 로 설정한 것처럼 동작합니다. 따라서 사용자가 새 compensate_for_errors 속성에 의해 제공된 기능을 사용하려는 경우 이 핫픽스를 모든 구독자에게 업그레이드해야 합니다. 이 업그레이드를 토폴로지 간에 일관된 동작을 유지할 수 있습니다.

Microsoft SQL Server 2000 Windows CE Edition 위한 구독자 다운로드 충돌을 동작하는 모든 이전 SQL Server 같은, compensate_for_errors 속성 설정과 관계없이 해제합니다. 그러나 compensate_for_errors 속성의 설정을 (게시자 및 Microsoft 인터넷 정보 서비스 (IIS)가 실행되는 컴퓨터에 이 핫픽스를 업그레이드했을 때 보상 변경 중에 오류 및 SQL Server CE 구독자에서 SQL Server 게시자 충돌 업로드 여부를 결정합니다.

이 속성은 sp_addmergearticle 저장 프로시저 및 sp_changemergearticle 저장된 프로시저를 @ compensate_for_errors 라는 새 매개 변수로 노출되는. 이 속성은 SQL Server 엔터프라이즈 관리자에서 노출되지 않습니다. 이 속성은 다시 않고 기존 아티클은 변경할 수 있습니다. 이 속성의 일반적인 사용:
exec sp_addmergearticle @publication = N'mypubl1', @article = N'authors', @source_owner = N'dbo', @source_object = N'authors', @compensate_for_errors='false'
or
exec sp_changemergearticle  @publication='mypubl1',@article='authors', @property='compensate_for_errors',@value='false'

"sp_addmergearticle" SQL Server 2000 온라인 설명서의 주제 추가

sp_addmergearticle [@compensate_for_errors = ]
		  'compensate_for_errors'
compensate_for_errors 속성은 동기화 중에 오류가 발생하면 보상 동작이 수행됩니다 여부를 제어합니다. @ compensate_for_errors 매개 변수 nvarchar(5)로 정의되며 true 기본 설정이 있습니다. 기본적으로, 게시자 또는 구독자가 항상 동기화 중에 적용할 수 있는 변경 작업을 보상 변경 내용이 되돌릴 이어집니다. 그러나 오류가 발생하는 경우를 보여 줍니다 한 잘못 구성된 구독자 변경 내용을 다른 구독자 및 게시자 잘못 되돌릴 수 발생할 수 있습니다. compensate_for_errors 속성을 false 비활성화됩니다 이러한 보상 동작을 설정하는 중입니다.

참고compensate_for_errors 속성을 false로 설정하면 비 수렴 발생할 수 있습니다.

"sp_changemergearticle" SQL Server 온라인 설명서의 주제 추가

sp_changemergearticle [ @publication = ] 'publication' , [ @article = ] 'article' [ , [
		  @property = ] 'property' ] [ , [ @value =] 'value' ]
표 축소표 확대
속성설명
compensate_for_errorsTrue동기화 중 오류 발생 시 보상 동작이 수행됩니다. 이는 기본 동작입니다.
compensate_for_errorsfalse 보상 작업 수행

참고compensate_for_errors 속성을 false로 설정하면 비 수렴 발생할 수 있습니다.

다음 select 문을 compensate_for_errors 속성을 true 또는 false 설정할지 여부를 결정합니다:
select CASE compensate_for_errors WHEN 0 THEN ‘FALSE’ ELSE ‘TRUE’ END from sysmergearticles where name = ‘NameOfTheArticle’

compensate_for_errors 속성은 특정 아티클에 대한 공유 속성입니다 때문에 일치하도록 문서를 여러 게시에 속해 있으면 해당 값을 합니다 (같은 재게시자 시나리오 및 대체 동기화 파트너와). 대부분의 경우 이 조건이 적용됩니다. 그러나 해당 compensate_for_errors 속성은 문서를 공유하는 모든 게시에 특정 아티클에 대해 같은 값을 갖도록 하려면 사용자의 책임입니다. 토폴로지 간에 일관된 동작을 이렇게 다시.

참고 SQL Server 인스턴스를 이 핫픽스를 적용한 전에 백업한 복제된 데이터베이스를 백업을 복원해야 할 경우 복원된 데이터베이스 복제에 사용할 SQL Server의 인스턴스에 대해 필요한 매개 변수를 사용하여 sp_vupgrade_replication 저장 프로시저를 실행하십시오.

자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
824684Microsoft 소프트웨어 업데이트를 설명하는 데 사용되는 표준 용어에 대한 설명

속성

기술 자료: 828637 - 마지막 검토: 2014년 2월 26일 수요일 - 수정: 5.3
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
키워드:?
kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbqfe kbsqlserv2000presp4fix kbfix kbbug KB828637 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com