PlanCache.clearPlansByQuery()
이 페이지의 내용
정의
PlanCache.clearPlansByQuery( <query>, <projection>, <sort> )
지정된 계획 캐시 쿼리 형태에 대해 캐시된 쿼리 계획을 지웁니다.
중요
Mongo쉬 방법
이 페이지에서는
mongosh
메서드를 설명합니다. 이는 데이터베이스 명령 또는 Node.js와 같은 언어별 드라이버에 대한 설명서가 아닙니다.데이터베이스 명령에 대해서는
planCacheClear
명령을 참조하십시오.MongoDB API 드라이버의 경우 언어별 MongoDB 드라이버 설명서를 참조하세요.
이 메서드는 특정 컬렉션의
plan cache object
에서만 사용할 수 있습니다. 즉, 다음과 같습니다.db.collection.getPlanCache().clearPlansByQuery( <query>, <projection>, <sort> ) PlanCache.clearPlansByQuery()
메서드는 다음 매개 변수를 허용합니다.Parameter유형설명query
문서계획 캐시 쿼리 형태 의 쿼리 조건자입니다. 필드 이름을 포함한 술어의 구조만이 형태에 중요합니다. 즉, 쿼리 조건자의 값이 중요하지 않습니다.projection
문서선택 사항. 계획 캐시 쿼리 형태 와 관련된 프로젝션 입니다.sort
매개변수를 지정하는 경우 필수입니다.sort
문서선택 사항. 계획 캐시 쿼리 형태 와 관련된 정렬입니다.캐시된 쿼리 계획이 있는 쿼리 형태를 확인하려면 예제를 참조하세요.
MongoDB 8.0 부터는 인덱스 필터 를 추가하는 대신 쿼리 설정을 사용합니다. 인덱스 필터는 MongoDB 8.0 부터 더 이상 사용되지 않습니다.
쿼리 설정에는 인덱스 필터보다 더 많은 기능이 있습니다. 또한 인덱스 필터는 영구적이지 않으며 모든 클러스터 노드에 대한 인덱스 필터를 쉽게 만들 수 없습니다. 쿼리 설정을 추가하고 예제를 탐색하려면 setQuerySettings
를 참조하세요.
필요한 액세스 권한
authorization
(으)로 실행되는 시스템에서 사용자는 planCacheWrite
조치를 포함하는 액세스 권한이 있어야 합니다.
예시
컬렉션 orders
에 다음과 같은 계획 캐시 쿼리 형태 가 있는 경우
{ "query" : { "qty" : { "$gt" : 10 } }, "sort" : { "ord_date" : 1 }, "projection" : { }, "planCacheShapeHash" : "9AAD95BE" }
경고
MongoDB 8.0 부터 기존 queryHash
필드 의 이름이 planCacheShapeHash
로 변경되었습니다. 이전 MongoDB 버전을 사용하는 경우 planCacheShapeHash
queryHash
가 표시됩니다.
다음 작업은 형태에 대해 캐시된 쿼리 계획을 제거합니다.
db.orders.getPlanCache().clearPlansByQuery( { "qty" : { "$gt" : 10 } }, { }, { "ord_date" : 1 } )