823, 824, 825, 832 오류 (DISK IO 오류)
- Version : SQL Server 2000, 2005, 2008, 2008R2, 2012
데이터베이스 오류 중에 823, 824, 825는 I/O에 관련된 오류로 심각도가 매우 높은 메시지 이다. 이미 823, 824에 대해서는 많이 알려져 있으며 필자 또한 많이 겪었던 오류이다. 이번 시간에는 823, 824, 825, 832의 메시지가 알려주는 에러 내용을 간단히 정리해 보자.
[Error : 823 : IO error OS cannot read the data]
823 메시지는 Windows 읽기 또는 쓰기 요청 실패이다. Windows에서 반환하는 오류코드와 해당 텍스트가 메시지에 삽입된다. 읽기 작업의 경우 SQL Server에서 읽기 요청을 이미 4번 이상 다시 시도했을 수도 있다. 이 오류는 하드웨어로 인해 주로 발생하지만 장치 드라이버로 인해 발생 할 수도 있다.
관리자가 취해야 할 행동으로는
- 에러로그 확인 및 Windows 이벤트 로그 확인
- DBCC CHECKDB 실행
- 하드웨어 검사
[Operating system error 23]
ERROR_CRC, Data error (cyclic redundancy check)
[Error 824 : IO Error SQL Server cannot read the data]
824 메시지는 Windows가 디스크에서 페이지를 성공적으로 읽었음을 보고 하지만 SQL Server가 해당 페이지에서 잘못된 내용을 발견했음을 나타낸다. Windows에서 오류를 감지하지 못하는 점만 제외하면 823에러와 비슷하다. 이 오류는 디스크 드라이브의 실패, 디스크 펌웨어 문제, 잘못된 장치 드라이버 등 I/O 하위 시스템의 문제를 나타낸다.
관리자가 취해야 할 행동으로는
- 하드웨어 진단을 통한 시스템 확인.
- SQL Server오류로그 확인 및 Windows 이벤트 로그 확인
- 디스크 컨트롤러에 쓰기 캐시가 설정되어 있는지 확인(쓰기 캐시로 문제가 발생된다고 의심될 시 하드웨어 제공 업체에 문의)
- 미리쓰기 트랜잭션 로그 : http://sqlmvp.kr/140187494960
- 정상적인 백업파일을 이용한 복원 작업.
- PAGE_VERIFY CHECKSUM 옵션을 사용하도록 데이터베이스 변경
[Error 825 : IO Error, SQL Server read the data but not with first attempt after trying couple of attempts (max 4) – introduce in sql server 2005]
825 메시지는 읽기 작업이 적어도 한번 이상 다시 실행되었음을 나타내는 경고로 하드웨어 디스크에 문제가 있음을 나타낸다. 이 메지시는 SQL Server 문제를 나타내고 있지는 않지만 문제가 해결되지 않을 경우 데이터 손실이나 데이터베이스의 손실을 일으킬 수 있다. 시스템 이벤트 로그에 문제 진단에 도움이 되는 관련 이벤트가 포함되어 있을 수 있다.
관리자가 취해야 할 행동으로는
- 메시지의 오류 로그를 확인하여 문제를 파악한다.
- 디스크 시스템을 확인한다.(디스크, 디스크 컨트롤러, RAID 카드, 드라이버 등)
- 디스크 제조업체의 문의하여 디스크 시스템의 상태를 확인한다.
- 무결성 체크
[Error 832 : Memory Error, Sql server read data in memory but due to memory problem data is lost/corrupt in memory]
832 메시지는 데이터베이스 페이지를 캐시하는 동안 예기치 않게 수정되었음을 나타낸다. 메모리 또는 운영체제가 손상되었을 수도 있다. 이 오류는 종종 Lazy Writer 작업으로 감지 될 수도 있으며 Windows 응용프로그램 이벤트 로그에 기록된다.
관리자가 취해야 할 행동으로는
- 메모리, CPU 등 하드웨어에 문제가 있는지 확인 한다.
- 시스템 업데이트가 우리의 시스템에 적합하게 업데이트 되어 있는지 확인 한다.
- 확장 저장 프로시저, COM등 외부 DLL등으로 문제가 발생할 수 있는지 확인 한다.
- DBCC CHECK를 실행한다.
이 외에도 다양한 오류가 있으며 잘 정리해 두면 비상시 많은 도움이 될 듯 하다.
[참고자료]
- MS SQL Server 825 : http://msdn.microsoft.com/ko-kr/library/aa337447.aspx
- How to troubleshoot Msg 832 (constant page has changed) in SQL Server :
http://support.microsoft.com/kb/2015759
2013-07-01 / 강성욱 / http://sqlmvp.kr
'SQL Server > SQL Server Tip' 카테고리의 다른 글
Checkpoint 추적하기 (0) | 2015.07.22 |
---|---|
중복 인덱스와 성능(Duplicate Indexes with Performance) (0) | 2015.07.22 |
DISK I/O 병목 확인 (0) | 2015.07.22 |
SQL Server 2012에서 비상계정 생성하기 - 비밀번호를 잊어 버렸을 경우 대처하기 (0) | 2015.07.22 |
SQL Server 차단 최소화 (0) | 2015.07.22 |