Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

증상

다음과 같은 경우를 생각해 볼 수 있습니다.

  • Microsoft SQL Server 2014에는 두 개의 분할 된 테이블이 있으며, 첫 번째 테이블의 파티션은 동일한 파티션 구성표와 함수를 사용 하 여 다른 파일 및 파일 그룹에 매핑됩니다.

  • 이러한 파티션 중 하나를 두 번째 테이블로 전환한 다음 두 번째 테이블을 자릅니다.

  • 스위치 파티션으로 매핑되는 파일과 파일 그룹을 삭제 합니다.

  • 두 번째 테이블에서 SELECT 문을 실행 합니다.

이 경우 다음과 유사한 내용의 오류 메시지가 나타납니다.

메시지 606, 수준 21, 상태 1Metadata 데이터 불일치. 테이블에 대해 지정 된 파일 그룹 id<filegroup id> <테이블 이름> 존재 하지 않습니다. DBCC CHECKDB 또는 CHECKCATALOG를 실행 합니다.

DBCC CHECKDB/CHECKTABLE를 실행 하면 다음과 같은 오류 메시지가 나타납니다.

Filegroup (FileGroup ID <Filegroupnumber>) IndexName 가 유효 하지 않기 때문에 테이블 <TableName>> <index를 처리할 수 없습니다.

해결 방법

이 문제는 SQL Server의 다음과 같은 누적 업데이트에서 처음 수정 되었습니다.

각각의 새로운 새 누적 업데이트에는 이전 누적 업데이트에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. SQL Server에 대 한 최신 누적 업데이트를 다운로드 하 여 설치 하는 것이 좋습니다.

참고 이 수정은 향후이 문제가 발생 하지 않도록 방지 합니다. 이미이 문제가 발생 하는 경우 기존 메타 데이터 손상 없이 최신 데이터베이스로 데이터를 내보내십시오. 이렇게 하려면 다음 단계를 수행하세요.

  1. 파티션에 잘못 된 파일 그룹이 있는지 여부를 확인 하려면 다음 쿼리를 실행 하 여 결과를 반환 하는 경우 확인 합니다.

    SELECT * FROM sys.allocation_units AS au WHERE au.data_space_id NOT IN (SELECT data_space_id FROM sys.filegroups)
  2. 메타 데이터로 손상 된 테이블을 다시 볼 수 있도록 합니다. 1 단계의 쿼리가 결과를 반환 하는 경우 메타 데이터가 손상 된 파티션으로 인해 테이블의 모든 행을 볼 수 없습니다 (선택 * 시작). 이 문제를 해결 하려면 해당 하는 잘못 된 파티션을 제거 합니다.참고 잘못 된 파티션은 비어 있어야 합니다. 그렇지 않으면 파일과 파일 그룹이 삭제 되거나 삭제 되지 않았을 수 있습니다. 이렇게 하려면이 파티션을 같은 파티션 구성표를 사용 하는 다른 테이블로 이동 합니다. 이 표는 더미 테이블 일 수 있습니다. 1 단계의 쿼리에서 container_id를 사용 하 고이를 sys. 파티션의 partition_id와 일치 시킵니다. (Partition_number를 기록해 두어야 합니다.) Partition_number를 사용 하 여 더미 테이블로 unviewable 된 테이블에서 ALTER TABLE SWITCH 파티션을 수행 합니다. 더미 테이블은 동일한 열 집합을 포함 하 고 동일한 파티션 구성표를 사용 해야 합니다. 일치 하지 않는 파티션을 찾는 쿼리는 다음과 같이 표시 될 수 있습니다.

    SELECT au.container_id, au.data_space_id, p.partition_number FROM sys.partitions AS p JOIN sys.allocation_units AS au ON p.partition_id = au.container_id LEFT JOIN sys.filegroups AS fgs ON fgs.data_space_id = au.data_space_id WHERE object_id = OBJECT_ID('MyTableName') AND fgs.data_space_id IS NULL;
  3. 이전 unviewable 테이블에서 새 데이터베이스로 데이터를 복사 합니다.

상태

Microsoft는 "적용 대상" 절에 나열한 Microsoft 제품에서 이 문제를 확인했습니다.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×