반응형
601 Error, Could not continue scan with NOLOCK due to SQL Server data Movement
- 메시지 601, 수준 12, 상태 3, 프로시저 usp_SQLMVP, 줄 23
- 데이터 이동으로 인해 NOLOCK으로 계속 검색할 수 없습니다.
-
Version : SQL Server 2005, 2008, 2008R2, 2012, 2014
데이터 조회 프로시저 호출에서 다음과 같이 601 에러가 발생 하였다. 601 에러는 어떨떄 발생 할까?
601에러는 READ UNCOMMITTED, NOLOCK 힌트를 사용하여 데이터를 조회 할 때 하나 이상의 데이터가 페이지가 없기 때문에 발생한다. 페이지 분할로 이동했거나 페이지가 삭제되었을 경우 발생 한다. 즉 SQL Server가 스캔 작업을 계속 할 수 없을 때 발생한다.
페이지 삭제의 경우 디스크 커럽션이 발생해서 데이터가 손실될 경우도 있으므로 페이지 손상이 있는지 DBCC CHECKDB 옵션을 사용하여 무결성 확인을 해 볼 필요가 있다.
-
DBCC CHECKDB : http://msdn.microsoft.com/ko-kr/library/ms176064.aspx
이 외에도 인덱스 튜닝 등을 통하여 쿼리를 좀더 빠르게 개선할 수 있도록 한다. 또한 조회 데이터가 적을수록 발생할 가능성이 적어진다.
[참고자료]
2014-12-24 / 강성욱 / http://sqlmvp.kr
601 에러, MSSQL, sqlserver, 인덱스, index, DBCC CHECKDB, 디스크검사, NOLOCK, 격리수준, 쿼리튜닝, 디스크 커럽션, DISK CRUUPTION
반응형
'SQL Server > SQL Server Tip' 카테고리의 다른 글
SQL Server 2008R2 Diagnostic Information Queries (0) | 2015.07.23 |
---|---|
SQL Server 2005 Diagnostic Information Queries (0) | 2015.07.23 |
데이터베이스의 모든 인덱스 생성 삭제 스크립트 만들기 (0) | 2015.07.23 |
SQL Server Spinlock 소개 (0) | 2015.07.23 |
Ad-hoc 쿼리와 실행계획 (0) | 2015.07.23 |