증상
SQL Server 2005 병합 복제를 사용 하 여 웹 동기화를 사용 하 여 SQL Server 2008 병합 복제는 구독자 기초 · 반복 되는 동기화 한 후 메모리 누수가 발생 하 고 일정 시간 후 "메모리 부족" 오류가 나타날 수 있습니다. -연속 스위치와 함께 (Replmerg.exe) 병합 에이전트를 사용 하는 경우 처럼, 오랜 시간 동안 호스트 프로세스를 다시 시작할 때 처리할 수 연속 매개 변수는 에이전트에 적용 되는 에이전트 프로필에 지정 된 경우 또는. 또한이 문제는 RMO 응용 프로그램이 나 응용 프로그램을 종료 하지 않고 몇 일 동안 실행 하는 경우 동기화 루프에서 실행 되는 개발한 서비스를 발생할 수 있습니다.
원인
여러 내부 개체가 각 동기화 시 유출.
해결 방법
SQL Server 2005 서비스 팩 3
이 문제에 대 한 수정 프로그램은 먼저 SQL Server 2005 서비스 팩 3 누적 업데이트 6에서 릴리스 되었습니다. 이 누적 업데이트 패키지에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
SQL Server 2005 서비스 팩 3 용 974648 누적 업데이트 패키지 6참고: 빌드는 계속 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2005에 포함 된 모든 보안 수정 프로그램 릴리스의 수정. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용 고려 하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 다음 문서를 확인하십시오.
960598 SQL Server 2005 빌드 SQL Server 2005 서비스 팩 3이 출시 된 이후에 릴리스된. Microsoft SQL Server 2005 핫픽스는 특정 SQL Server 서비스 팩에 대 한 만들어졌습니다. SQL Server 2005 서비스 팩 3을 설치 하려면 SQL Server 2005 서비스 팩 3 핫픽스를 적용 해야 합니다. 기본적으로 SQL Server 서비스 팩에서 제공 되는 모든 핫픽스는 다음 SQL Server 서비스 팩에 포함 됩니다.
SQL Server 2008의 릴리스 버전
중요: SQL Server 2008의 릴리스 버전을 실행 하는 경우이 수정 프로그램을 설치 해야 합니다.
이 문제에 대 한 수정 프로그램이 누적 업데이트 8에서 릴리스 먼저 되었습니다. SQL Server 2008에 대 한이 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.SQL Server 2008 975976 누적 업데이트 패키지 8참고: 빌드는 계속 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2008에 포함 된 모든 보안 수정 프로그램 릴리스의 수정. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용 고려 하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 다음 문서를 확인하십시오.
SQL Server 2008이 출시 된 이후에 릴리스된 956909 는 SQL Server 2008 빌드
SQL Server 2008 서비스 팩 1
중요: SQL Server 2008 서비스 팩 1을 실행 하는 경우이 수정 프로그램을 설치 해야 합니다.
이 문제에 대 한 수정 프로그램은 먼저 SQL Server 2008 서비스 팩 1 용 누적 업데이트 5에 릴리스 되었습니다. 이 누적 업데이트 패키지에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.SQL Server 2008 서비스 팩 1 용 975977 누적 업데이트 패키지 5참고: 빌드는 계속 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2008에 포함 된 모든 보안 수정 프로그램 릴리스의 수정. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용 고려 하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 다음 문서를 확인하십시오.
SQL Server 2008 서비스 팩 1이 출시 된 이후에 릴리스된 970365 는 SQL Server 2008 빌드 Microsoft SQL Server 2008 핫픽스는 특정 SQL Server 서비스 팩에 대 한 만들어졌습니다. SQL Server 2008 서비스 팩 1을 설치 하려면 SQL Server 2008 서비스 팩 1 핫픽스를 적용 해야 합니다. 기본적으로 SQL Server 서비스 팩에서 제공 되는 모든 핫픽스는 다음 SQL Server 서비스 팩에 포함 됩니다.
상태
Microsoft는 이 문제가 '적용 대상' 섹션에 나열된 Microsoft 제품의 문제임을 확인했습니다.
해결 방법
이 문제를 해결 하려면 다음 방법 중 하나를 사용 합니다.
방법 1
병합 에이전트가 연속 모드를 사용 하는 병합 에이전트 프로세스를 정기적으로 중지 하 고 다시 시작 하십시오.
예를 들어, 5 일 후에 "메모리 부족" 이라는 오류 메시지가 및 병합 에이전트 작업으로 예약 됩니다. 그런 다음 하면 sp_stop_job sp_start_job 5 일 간격의 영향을 받는 프로세스 장군을 고 병합 에이전트 작업 이름을 지정 하 여 다음에 호출할 새 SQL Server 에이전트 작업을 예약 합니다. 병합 에이전트 (Replmerg.exe) 프로세스를 중지 하면 프로세스 메모리 공간 내부에서 누수 된 메모리는 해제 됩니다. 사용에 대 한 자세한 내용은 연속-스위치의 병합 에이전트에서 다음 Microsoft Developer Network (MSDN) 웹 사이트를 참조 하십시오.http://msdn.microsoft.com/en-us/library/ms147839.aspx
sp_stop_job http://msdn.microsoft.com/en-us/library/ms182793(SQL.90).aspx
sp_start_job http://msdn.microsoft.com/en-us/library/ms186757(SQL.90).aspx
방법 2
작업에서 병합 에이전트를 사용 하면 연속 매개 변수를 사용 하는 대신 추가 단계를 사용 하 여 작업 내 수동 루프 논리를 구성할 수 있습니다. 하나의 병합 에이전트 프로세스를 내부적으로 영원히 계속 해 서 반복 하는 대신 병합 에이전트 일정을 기준으로 1 분 마다 같은 반복 되는 작업 단계를. 재시도 사이의 과정 프로그램이 종료 되 고이 누수 된 메모리를 해제 합니다.
병합 에이전트 작업 단계 사이의 일시 중지를 포함 하는 루프의 반복에 반복을 편집 합니다.-
[3] 단계를 수행한 후 "검색 기록 되지 않은 에이전트 종료" [4] 새 단계 추가 "무한 재시도 루프" 라는 TSQL 및 명령 유형을 설정 "waitfor 지연 ' 0: 00:05'"를 TSQL 지연으로 병합 에이전트가 실행 되는 사이 잠시 되며 지속적으로 실행 하는 방식으로 폴링 간격을 구성할 수 있는 두 번째 5 일시 정지를 제공 합니다. 고급 탭에서 "대 성공 동작 지정" "[2] 실행 에이전트를 이동" 및 "작업 실패"에 "[2] 단계 실행 에이전트에 청구"
-
[2] 단계 단계 [4] 루프에 도달할 수 있도록 에이전트 실행을 편집 합니다. 설정에 성공 작업 단계 [2]의 고급 탭에서 "단계로 이동: [4] 무한 재시도 루프"를 "다음 단계로 이동 합니다." On 오류 작업 설정
-
[3] 단계 편집 "검색 기록 되지 않은 에이전트 종료" [4] 단계에서 루프에 도달 하면 되도록 합니다. [3] 단계의 고급 탭에서 "다음 단계로 이동"에서 성공 작업을 설정 합니다. [3] 단계에서 오류 동작을 설정 하는 경우 원하는 결정할 수도 "다음 단계로 이동" 또는 "실패 보고와 함께 작업을 종료 합니다." 종료 하도록 구성 된 경우 작업 실패 작업 모니터 및 복제 모니터에 표시 됩니다. 실패 네 번째 루프 단계로 이동 하려면 구성 된 경우 병합 에이전트를 무제한으로 다시 실행할 수 및 오류 계속 기록 합니다.
방법 3
마찬가지로 RMO 응용 프로그램을 사용 하 여 루프에서 구독자 데이터베이스를 동기화 하는 MergeSynchronizationAgent.Synchronize() 메서드를 호출 하는 경우 중지 하 고 주기적으로 메모리를 비우는이 문제로 인해 누수 되는 프로세스를 다시 시작 합니다.http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.replication.mergesynchronizationagent.synchronize(SQL.90).aspx
이 개체와 메서드에 대 한 자세한 내용은 다음 Microsoft Developer Network (MSDN) 웹 사이트를 참조 하십시오:참조
사용 하는 방법에 대 한 자세한 내용은 연속 스위치-병합 에이전트가 다음 Microsoft Developer Network (MSDN) 웹 사이트를 방문 합니다.
http://msdn.microsoft.com/en-us/library/ms147839.aspx Sp_stop_job 저장 프로시저에 대 한 자세한 내용은 다음 Microsoft Developer Network (MSDN) 웹 사이트를 방문 하십시오.
http://http://msdn.microsoft.com/en-us/library/ms182793(SQL.90).aspx Sp_start_job 저장 프로시저에 대 한 자세한 내용은 다음 Microsoft Developer Network (MSDN) 웹 사이트를 방문 하십시오.
http://msdn.microsoft.com/en-us/library/ms186757(SQL.90).aspx 에 대 한 자세한 내용은 SQL Server 2005 서비스 팩 3을 구하는, Microsoft 기술 자료의 다음 문서 번호를 클릭 하는 방법.
913089 는 SQL Server 2005 최신 서비스 팩을 구하는 방법 SQL Server 2005 s p 3의 개선 사항 및 SQL Server 2005 서비스 팩 3 (SP3)의 새로운 기능에 대 한 자세한 내용은 다음 Microsoft 웹 사이트를 방문 하십시오.
http://go.microsoft.com/fwlink/?LinkId=131442SQL Server 업데이트의 명명 스키마에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
Microsoft SQL Server 소프트웨어에 대 한 새로운 명명 스키마를 822499 업데이트 패키지 소프트웨어 업데이트 용어에 대한 자세한 내용을 보려면, 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 확인하십시오.
824684 Microsoft 소프트웨어 업데이트의 설명에 사용되는 표준 용어 설명