메시지 8939, 수준 16, 상태 98, 줄 1
테이블 오류: 개체 ID 23, 인덱스 ID 1, 파티션 ID 281474978217984, 할당 단위 ID 281474978217984(In-row data 유형), 페이지 (1:743). 테스트(IS_OFF (BUF_IOERR, pBUF->bstat))에 실패했습니다. 값은 133129 및 -4입니다.
메시지 8906, 수준 16, 상태 1, 줄 1
데이터베이스 ID 5의 페이지 (1:742)이(가) SGAM (1:3) 및 PFS (1:1)에 할당되었으나 IAM에는 할당되지 않았습니다. PFS 플래그가 'MIXED_EXT ALLOCATED 0_PCT_FULL'(으)로 표시되어 있습니다.
메시지 8906, 수준 16, 상태 1, 줄 1
데이터베이스 ID 5의 페이지 (1:743)이(가) SGAM (1:3) 및 PFS (1:1)에 할당되었으나 IAM에는 할당되지 않았습니다. PFS 플래그가 'IAM_PG MIXED_EXT ALLOCATED 0_PCT_FULL'(으)로 표시되어 있습니다.
메시지 2575, 수준 16, 상태 1, 줄 1
개체 ID 23, 인덱스 ID 1, 파티션 ID 281474978217984, 할당 단위 ID 281474978217984(In-row data 유형)에 있는 IAM(Index Allocation Map) 페이지 (0:0)의 다음 포인터가 IAM 페이지 (1:743)을(를) 가리키고 있지만 이 페이지는 검색 시 감지되지 않았습니다.
메시지 8939, 수준 16, 상태 98, 줄 1
테이블 오류: 개체 ID 23, 인덱스 ID 1, 파티션 ID 281474978217984, 할당 단위 ID 281474978217984(In-row data 유형), 페이지 (1:743). 테스트(IS_OFF (BUF_IOERR, pBUF->bstat))에 실패했습니다. 값은 133129 및 -4입니다.
메시지 7965, 수준 16, 상태 2, 줄 1
테이블 오류: 할당(IAM) 페이지가 잘못되어 개체 ID 23, 인덱스 ID 1, 파티션 ID 281474978217984, 할당 단위 ID 281474978217984(In-row data 유형)을(를) 확인할 수 없습니다.
'sys.sysphfg'의 DBCC 결과입니다.
0개 페이지에 개체 "sys.sysphfg"에 대한 행이 0개 있습니다.
CHECKDB이(가) 테이블 'sys.sysphfg'(개체 ID 23)에서 4개의 할당 오류와 2개의 일관성 오류를 찾았습니다.
오류나는 테이블 메세지는 위와 같습니다.
저거외에 테이블 2개가 더 있었는데 CHECKTABLE 의 repair_allow_data_loss 로 처리했습니다.
REPAIR_REBUILD 는 안되더라구요.
처리한 두 테이블은 직접 만들어서 사용하고 있는 테이블인데
sys.sysphfg 라는건 어떻게 처리해야할지 모르겠네요.
DBCC CHECKTABLE (sys.sysphfg, repair_allow_data_loss); 는
메시지 102, 수준 15, 상태 1, 줄 4
'.' 근처의 구문이 잘못되었습니다.
DBCC CHECKTABLE (sysphfg, repair_allow_data_loss); 는
메시지 2501, 수준 16, 상태 45, 줄 5
이름이 "sysphfg"인 테이블 또는 개체를 찾을 수 없습니다. 시스템 카탈로그를 확인하십시오.
와같이 안되서 어떻게 해야할지 모르겠네요.
도움 부탁드립니다.
Comment 5
-
catchv
2017.01.16 14:08
-
혁ol
2017.01.16 15:26
/m 모드 후 알려주신대로
DBCC CHECKTABLE ('sys.sysphfg', repair_allow_data_loss);
를 실행했습니다.
오류건이 처리됐다고 나와서 확인 차
DBCC CHECKDB 를 실행하니
데이터베이스 'OOOO': 시스템 카탈로그의 일관성 오류로 인해 DBCC checkdb 프로세스를 계속 진행할 수 없습니다.
라고 나오네요. 정상적으로 복구 안된거겠죠?;;;
-
혁ol
2017.01.16 15:47
single_user 로 변경하고 DBCC CHECKDB 하니 결과값이 나오네요.
그런데 첫줄에
'OOOO'의 DBCC 결과입니다.
메시지 8906, 수준 16, 상태 1, 줄 1
데이터베이스 ID 5의 페이지 (1:742)이(가) SGAM (1:3) 및 PFS (1:1)에 할당되었으나 IAM에는 할당되지 않았습니다. PFS 플래그가 'MIXED_EXT ALLOCATED 0_PCT_FULL'(으)로 표시되어 있습니다.라고 나오네요;; 해결되는 듯하면서 안되는;;; 어렵네요;;
-
minsouk
2017.01.17 01:17
allow data loss 는 할당테이블 기준으로 데이터를 날리고 테이블 구조를 맞추어 복구하는 방법인데요 system 테이블 중 일부가 날아가면 복구가 불가능한 경우가 있습니다. 이 경우 system userid pass 등을 스크립팅 하시고 master 를 동일버전의 더른서버의 것을 가져오는게 좋습니다 아니면 백업 복구를 하시구요 위 에러는 어떤 상황에서 발생한 건가요? 가만히 있다 그런 건가요? 그렇다면 시스템을 정밀 점검하시고 다른 시스템에서 운영하시길 권고 드립니다 하드웨어 장애가 있을 확률이 매우 높아요 -
혁ol
2017.01.17 11:25
말씀하신대로 system 테이블의 데이타가 손실되어서 안되는거였나보네요.
관리 업체에서 문제가 된거라 어떤상황에서 발생했는지 정확히는 파악은 안되지만 저도 하드웨어 장애를 의심하고 있습니다.
디스크를 오래 사용하고 있는거 같네요.
일단 DB 를 하나더 만들어 기존 DB 에서 데이터를 옮기는 방법으로 처리했습니다.
새로 생성된거라 system 테이블도 정상이라 DBCC CHECKDB 시 오류내용은 없네요.
업체에서도 장비교체하기로 했습니다.
도움주셔서 감사합니다.
DBCC CHECKTABLE ('sys.sysphfg', repair_allow_data_loss);
master DB라서 그냥 수정은 불가능 합니다. /m 모드로 변경 후에 실행해보세요.