티스토리 뷰
Block Corruption 발생이유 : shutdown abort, 사용중 파일 복사
recover 명령어로는 해결불가
Block Corruption 고의로 일으키는 방법 :
예) users tablespace 이용
1. users tablespace에 scott계정으로 테이블 생성후 데이터 100건 입력
2. users tablespace 오프라인
3. winscp 사용 윈도우로(users.dbf) 이동
4. 울트라 에디터 사용 (users.dbf로 열기 -> 만원경으로 칼럼 복사후 검사후 강제 수정 -> 저장) 후 다시 리눅스로 옮김
5. users tablespace 온라인
6. 데이터 조회하면 block corruption에러 발생성공
고치는 방법
DBVerify :
사용문법 : dbv file=file_name [options]
-리두, 컨트롤파일 점검불가
-asm 파일 점검 가능
DBMS_REPAIR :
->두방법의 문제점은 corruption난 row를 찾긴 하지만, 해당row를 복구하지 않고 버림.
*block fix : corrupt된 블록 찾은후 해당블록 fix하고 사용안한다고(skip) marking하는것
명령어와 옵션 중요.
BBED : corruption 블록 찾은후 복구
delete 장애 복구