db.collection.hideIndex()
정의
db.collection.hideIndex()
중요
Mongo쉬 방법
이 페이지에서는
mongosh
메서드를 설명합니다. 이는 데이터베이스 명령 또는 Node.js와 같은 언어별 드라이버에 대한 설명서가 아닙니다.데이터베이스 명령 의 경우
collMod
명령을 사용하여 설정하다index.hidden
컬렉션 옵션을 참조하세요.MongoDB API 드라이버의 경우 언어별 MongoDB 드라이버 설명서를 참조하세요.
쿼리 플래너에서 기존 인덱스를 숨깁니다. 쿼리 플래너에서 숨겨진 인덱스는 쿼리 계획 선택의 일부로 평가되지 않습니다.
플래너에서 인덱스를 숨기면 실제로 인덱스를 삭제하지 않고도 인덱스 삭제의 잠재적 영향을 평가할 수 있습니다. 영향이 부정적인 경우 삭제된 인덱스를 다시 만들 필요 없이 인덱스 숨기기를 해제할 수 있습니다. 그리고 인덱스는 숨겨진 상태에서도 완전히 유지되므로 숨김을 해제하면 인덱스를 즉시 사용할 수 있습니다.
자세한 내용은 숨겨진 인덱스를 참조하세요.
구문
db.collection.hideIndex(<index>)
매개변수
db.collection.hideIndex()
메서드는 다음 매개 변수를 사용합니다.
Parameter | 유형 | 설명 |
---|---|---|
index | 문자열 또는 문서 | 쿼리 플래너에서 숨길 인덱스를 지정합니다. 인덱스 이름 또는 인덱스 사양 문서로 인덱스를 지정할 수 있습니다. 인덱스 이름 또는 인덱스 사양 문서 를 찾으려면 텍스트 인덱스를 숨기려면 인덱스 이름을 지정합니다. |
는 db.collection.hideIndex()
mongosh
shell collMod
명령에 대한 래퍼입니다.
행동
기능 호환성 버전
인덱스를 숨기려면 featureCompatibilityVersion을 5.0
이상으로 설정해야 합니다.
제한 사항
_id
인덱스는 숨길 수 없습니다.
인덱스 수정 통계 재설정
숨김 해제된 인덱스를 숨기면 해당 $indexStats
가 재설정됩니다.
No-op
이미 숨겨진 인덱스를 숨겨도 인덱스에는 영향을 미치지 않습니다. 그러나 이 작업은 여전히 빈 oplog 항목을 생성합니다.
액세스 제어
배포에서 인증/권한을 적용하려면 컬렉션의 데이터베이스에 collMod
권한이 있어야 합니다.
기본 제공 역할 dbAdmin
은 이러한 권한을 제공합니다.
예시
다음은 기존 인덱스를 숨기는 예시입니다.
먼저 db.collection.createIndex()
사용하여 숨기지 않고 인덱스를 만듭니다.
db.restaurants.createIndex( { borough: 1, ratings: 1 } );
인덱스를 숨기려면 인덱스 키 사양 문서 또는 db.collection.hideIndex()
메서드에 인덱스 이름을 지정하면 됩니다. 다음은 인덱스 이름을 지정합니다.
db.restaurants.hideIndex( "borough_1_ratings_1" );
확인하려면 restaurants
컬렉션에서 db.collection.getIndexes()
을(를) 실행하세요.
db.restaurants.getIndexes();
이 작업은 다음 정보를 반환합니다.
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_" }, { "v" : 2, "key" : { "borough" : 1, "ratings" : 1 }, "name" : "borough_1_ratings_1", "hidden" : true } ]
hidden
인덱스 옵션은 값이 true
인 경우에만 반환됩니다.