db.checkMetadataConsistency()
정의
db.checkMetadataConsistency(options)
cluster 또는 데이터베이스의 샤딩 메타데이터에 대한 일련의 일관성 검사를 수행합니다. 이 메서드는 발견된 불일치 결과 전체 또는 배치가 포함된 커서를 반환합니다.
중요
Mongo쉬 방법
이 페이지에서는
mongosh
메서드를 설명합니다. 이는 데이터베이스 명령 또는 Node.js와 같은 언어별 드라이버에 대한 설명서가 아닙니다.데이터베이스 명령의 경우
checkMetadataConsistency
명령을 참조하세요.MongoDB API 드라이버의 경우 언어별 MongoDB 드라이버 설명서를 참조하세요.
업그레이드 및 다운그레이드와 같은 주요 유지 관리 작업 후에 이 메서드를 실행하거나 이전 릴리스의 MongoDB 에서 클러스터 메타데이터 가 일관되지 않거나 버그로 인해 손상되었는지 확인합니다.
기본적으로 이 메서드는 샤드 전체에 걸쳐 인덱스의 일관성을 확인하지 않습니다. 인덱스 검사는 인덱스를 생성, 삭제 또는 수정하는 작업과 동시에 실행되는 경우 잘못된 긍정 불일치를 반환할 수 있습니다. 이 메서드로 인덱스를 확인하려면
checkIndexes
옵션을 설정합니다.기본값 으로 이 메서드는 지정된 데이터베이스 에 대한 샤딩 메타데이터 를 확인합니다.
admin
데이터베이스 에서 실행 하면 대신 전체 클러스터 에 대한 샤딩 메타데이터 를 확인합니다.이 메서드가 검색하는 불일치에 대한 자세한 내용은 불일치 유형을 참조하세요.
반환합니다: 이 메서드는 documents
배열이 있는 커서를 반환하며, 여기에는 샤딩 메타데이터에서 발견된 각 불일치에 대한 문서가 포함되어 있습니다.
호환성
이 메서드는 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.
MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스
참고
이 명령은 모든 MongoDB Atlas 클러스터에서 지원됩니다. 모든 명령에 대한 Atlas 지원 에 대한 자세한 내용은 지원되지 않는 명령을 참조하세요.
MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전
MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전
구문
db.checkMetadataConsistency()
메서드의 구문은 다음과 같습니다.
db.checkMetadataConsistency( { <options> } )
options
문서는 다음 필드와 값을 사용할 수 있습니다.
필드 | 유형 | 설명 |
---|---|---|
checkIndexes | 부울 | 명령이 샤딩 메타데이터의 인덱스도 확인하는지 여부를 설정합니다. 이 작업은 인덱스를 생성, 삭제 또는 수정하는 작업과 동시에 실행될 때 오탐지 불일치를 반환할 수 있으므로 기본적으로 비활성화되어 있습니다. 이러한 작업이 발생할 가능성이 낮은 경우에만 인덱스를 확인합니다. |
cursor | 문서 | 리턴 커서를 구성합니다. |
cursor.batchSize | integer | 각 배치에 포함할 샤딩 메타데이터 불일치 문서의 최대 개수입니다. |
예시
데이터베이스에서 일관성 검사 수행
데이터베이스에서 일관성 검사를 수행하려면 db.checkMetadataConsistency()
메서드를 호출합니다.
use library db.checkMetadataConsistency()
{ cursorHasMore: false, documents: [ { type: "MisplacedCollection", description: "Unsharded collection found on shard different from database primary shard", details: { namespace: "library.authors", shard: "shard02", localUUID: new UUID("1ad56770-61e2-48e9-83c6-8ecefe73cfc4") } } ], }
클러스터에서 일관성 검사 수행
클러스터 에서 일관성 검사를 수행하려면 admin
데이터베이스 에서 db.checkMetadataConsistency()
메서드를 호출합니다.
use admin db.checkMetadataConsistency()
{ cursorHasMore: false, documents: [ { type: "MisplacedCollection", description: "Unsharded collection found on shard different from database primary shard", details: { namespace: "library.authors", shard: "shard02", localUUID: new UUID("1ad56770-61e2-48e9-83c6-8ecefe73cfc4") } } ], }