두 개의 MS SQL Server 2008 R2간에 트랜잭션 복제가 있습니다.SQL Server 2008 R2의 복제 문제 (구독자와 함께 배포)
하드 드라이브 오류로 인해 서버가 재부팅되었습니다.
복제가 자동으로 계속 작동합니다. 하지만 한 시간 후 오류가 발생했습니다 :
The subscription(s) have been marked inactive and must be reinitialized. NoSync subscriptions will need to be dropped and recreated.
로그 판독기 에이전트가 작동하여 배포자에게 트랜잭션을 보냅니다. 하지만 배포자가 구독자와 동기화 할 수 없게되었습니다.
또한 구독자는 배포자에게 변경 사항을 보낼 수 있습니다. 모든 분쟁은 배포자에 의해 해결됩니다.
구독을 다시 초기화하지 않으면 복제가 작동하는 다른 방법인지 알고 싶습니다.
이 오류는 디스크 오류가 아님을 발견했습니다. 그것이 그래서
:
우리는 새로운 외래 키를 추가
Publisher Table1 Table2 Table3
Subscriber Table1 Table2 Table3
Table1
및 Table2
복제에 있었다. Table3
- 아닙니다.
게시자 및 구독자마다 외래 키 Table2_Table3
을 추가했습니다.
그리고 나서 우리는 @ Rusus Rusanu 대답에 대한 우리의 설명에서 설명한 바와 같이 오류를 받기 시작했습니다.
우리는 삭제 및 복제를받지 않는 테이블에 외래 키 지침의 충돌 가입자 DB에 오류가 있습니다. 또한 우리는 작업을 강제로 삭제하지 않았습니다. 모든 삭제 작업은 충돌 자체를 해결하기 위해 복제 자체를 초기화했습니다. –