planCacheClearFilters
定義
planCacheClearFilters
コレクションの インデックスフィルターを削除します。インデックスフィルターはサーバープロセスの実行中のみ存在し、シャットダウン後は保持されませんが、
planCacheClearFilters
コマンドを使用して既存のインデックスフィルターをクリアすることもできます。特定のインデックス フィルターを削除するには、クエリシェイプを指定します。 クエリシェイプを省略すると、コレクションのすべてのインデックス フィルターがクリアされます。
互換性
このコマンドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
重要
このコマンドは、M 0 、M 2 、M 5クラスターではサポートされていません。 詳細については、「サポートされていないコマンド 」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
構文
このコマンドの構文は、次のとおりです。
db.runCommand( { planCacheClearFilters: <collection>, query: <query pattern>, sort: <sort specification>, projection: <projection specification>, comment: <any> } )
planCacheClearFilters
コマンドには次のフィールドがあります:
フィールド | タイプ | 説明 |
---|---|---|
| string | コレクションの名前。 |
| ドキュメント | 任意。 削除するフィルターに関連付けられたクエリ述語。 省略すると、 はコレクションからすべてのフィルターをクリアします。
|
| ドキュメント | 任意。 削除するフィルターに関連付けられているソート(存在する場合)。 |
| ドキュメント | 任意。 削除するフィルターに関連付けられているプロジェクション(存在する場合)。 |
| any | 任意。このコマンドに添付するユーザー指定のコメント。設定すると、このコメントは以下の場所にこのコマンドの記録と合わせて表示されます。
コメントには、有効な BSON 型(string, integer, object, array など)を使用できます。 |
必要なアクセス権
ユーザーには、 planCacheIndexFilter
アクションを含むアクセス権が必要です。
例
コレクションの特定のインデックス フィルターをクリア
orders
コレクションには次の 2 つのフィルターが含まれています。
{ "query" : { "status" : "A" }, "sort" : { "ord_date" : -1 }, "projection" : { }, "indexes" : [ { "status" : 1, "cust_id" : 1 } ] } { "query" : { "status" : "A" }, "sort" : { }, "projection" : { }, "indexes" : [ { "status" : 1, "cust_id" : 1 } ] }
次のコマンドは、2 番目のインデックス フィルターのみを削除します。
db.runCommand( { planCacheClearFilters: "orders", query: { "status" : "A" } } )
query
述語の値はクエリシェイプの決定には重要ではないため、次のコマンドによって 2 番目のインデックス フィルターも削除されます。
db.runCommand( { planCacheClearFilters: "orders", query: { "status" : "P" } } )
コレクションのすべてのインデックス フィルターのクリア
次の例では、 orders
コレクションのすべてのインデックス フィルターをクリアします。
db.runCommand( { planCacheClearFilters: "orders" } )