증상
SQL Server 2012 또는 SQL Server 2014에서 트랜잭션이 진행 중인 데이터베이스에 대 한 임시 스냅샷 또는 스냅숏을 만드는 DBCC CHECKDB 명령을 실행 하는 경우, 외부 오류로 인해 스냅숏에 대 한 롤백 복구에 실패 하는 경우 (예: i/o 오류)를 가정 합니다. 이 경우 다음과 같은 오류 메시지가 SQL Server 오류 로그에 기록 되 고 SQL Server가 예기치 않게 종료 됩니다.
<타임 스탬프> <SPID> <n> 트랜잭션은 데이터베이스 ' <dbname> ' (<id>)에 롤포워드 됩니다. 이 메시지는 정보 제공 용입니다. 사용자 작업은 필요 하지 않습니다. <타임 스탬프> <SPID> <오프셋에서 쓰기를 수행 하는 동안 (파일 시스템 제한으로 인해 요청 된 작업을 완료할 수 없습니다) "파일에 대 한 '> 파일 이름 <'의 오프셋> SQL Server 오류 로그 및 시스템 이벤트 로그의 추가 메시지가 자세한 정보를 제공할 수 있습니다. 이것은 데이터베이스 무결성을 threatens 하는 심각한 시스템 수준의 오류 조건이 며 즉시 수정 해야 합니다. 전체 데이터베이스 일관성 검사 (DBCC CHECKDB)를 완료 합니다. 이 오류는 여러 요인으로 인해 발생할 수 있습니다. 자세한 내용은 SQL Server 온라인 설명서를 참조 하세요. <타임 스탬프> <SPID> 오류: 3314, 심각도: 17, State: 3. 데이터베이스 '> <dbname> '의 기록 된 작업을 실행 취소 하는 동안 타임 스탬프 <<로그 레코드 ID (> aa: bb: cc <)에서 오류가 발생 했습니다. 일반적으로 특정 오류는 이전에 Windows 이벤트 로그 서비스의 오류로 기록 됩니다. 백업에서 데이터베이스 또는 파일 복원 또는 데이터베이스를 복구 합니다. <타임 스탬프> <SPID> 오류: 831, 심각도: 20, 상태: 1. <타임 스탬프> <SPID>는 유지 된 페이지의 할당을 취소할 수 없습니다. <타임 스탬프> <SPID> 오류: 3449, 심각도: 21, State: 1. 데이터베이스 (데이터베이스 ID <dbid> <를 복구 하려면 SQL Server를 종료 해야 합니다.> <SPID 데이터베이스가 종료 될 수 없는 사용자 데이터베이스 이거나 시스템 데이터베이스입니다. SQL Server를 다시 시작 합니다. 다른 시작 후 데이터베이스가 복구 되지 않으면 데이터베이스를 복구 하거나 복원 합니다. <timestamp> <SPID> 서버 종료로 인해 SQL 추적이 중지 되었습니다. 추적 ID = ' 1 '입니다. 이 메시지는 정보 제공 용입니다. 사용자 작업은 필요 하지 않습니다. <timestamp> <SPID> 서버 종료로 인해 SQL 추적이 중지 되었습니다. 추적 ID = ' 2 '. 이 메시지는 정보 제공 용입니다. 사용자 작업은 필요 하지 않습니다. <타임 스탬프> <SPID> 오류: 17188, 심각도: 16, 상태: 1.
원인
이 문제는 스냅숏에 대 한 롤백 복구가 실패할 때 SQL Server가 영향을 받는 데이터베이스를 오프 라인으로 전환 하려고 시도 하는 경우 발생 합니다. 그러나 해당 데이터베이스는 내부적으로 보존 된 래치 때문에 오프 라인 상태가 될 수 없습니다. 따라서 SQL Server 서비스가 종료 됩니다.
해결 방법
서비스 팩 정보
이 문제를 해결 하려면 SQL Server 2014에 대 한 서비스 팩 1을 구합니다.
SQL Server 2014 SP1(서비스 팩 1)에 대 한 자세한 내용은 Sql server 2014 서비스 팩 1에서 해결 된 버그를 참조 하세요.
누적 업데이트 정보
이 문제는 다음 SQL Server 누적 업데이트에서 처음 수정 되었습니다.
각각의 새로운 새 누적 업데이트에는 이전 누적 업데이트에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. SQL Server에 대 한 최신 누적 업데이트를 다운로드 하 여 설치 하는 것이 좋습니다.
상태
Microsoft는 "적용 대상" 절에 나열한 제품에서 이 문제를 확인했습니다.