SQL Server 2014 데이터베이스 쌍을 동기 AlwaysOn 가용성 그룹으로 설정했습니다.SQL Server AlwaysOn에서 더티 읽기
두 서버 모두 세션 수 시간이 50 초인 Synchronous commit
가용성 모드로 설정됩니다. 보조는 Read-intent only
읽을 수있는 보조로 설정됩니다.
주에 쓰고 즉시 보조 장치 (ApplicationIntent=ReadOnly
통해)에서 읽으면 일관되게 더티 데이터 (쓰기 전의 상태)를 읽습니다. 내가 글쓰기와 읽기 사이에서 약 1 초간 기다린다면 정확한 데이터를 얻습니다.
이 예상되는 동작입니까? 그렇다면 중등 학교에서 읽는 것이 최신인지 확인하기 위해 할 수있는 일이 있습니까?
기본 버전의 읽기 전용 버전 (장애 조치는 물론)으로 보조 버전을 사용하여 기본 버전의 부하를 줄이고 싶습니다. AlwaysOn..Internally SQL에서 더 잠금 힌트를 사용하지 않는 한 당신은 더러운 얻을 수있는 방법은 없습니다
가능성이 더 나은 트랜잭션 응답 시간 및 처리량 속도가 느려질 수 ://dba.stackexchange.com/ – Liam
"더티 읽기"가 아니라 단지 대기 시간입니다. 읽기 : https://blogs.msdn.microsoft.com/sqlserverstorageengine/2011/12/22/alwayson-readable-secondary-and-data-latency/ – dean
http://dba.stackexchange.com/questions/84420 참조/does-synchronous-commit-availability-mode-replica 사이의 일관성 보장. 간단히 말해서 : 예, 이것은 예상되며, * 대기 시간을 허용 할 수 없다면, 기본 서버에서 읽으십시오.아마도 독서가 최신인지 (방아쇠 등의 타임 스탬프 테이블)를 보장하기 위해 자신의 메커니즘을 생각해 낼 수 있지만, 대부분의 경우 이것은 가치보다 많은 문제가 될 수 있습니다. 어쨌든 하나의 작업 부하에서 복제본을 맹목적으로 섞어서 동기화하지 마십시오. –