定義
バージョン 6.0.7 の新機能。
既存の Atlas Search インデックスを削除します。
mongoshメソッド db.collection.dropSearchIndex()はupdateSearchIndexデータベースコマンドを囲むラッパーを提供します。
重要
このコマンドは、 MongoDB Atlasでホストされている配置でのみ実行でき、少なくとも M 10の Atlas クラスター階層が必要です。
構文
コマンド構文:
db.runCommand( { dropSearchIndex: "<collection name>", id: "<index Id>", name: "<index name>" } )
コマンドフィールド
dropSearchIndex コマンドは、次のフィールドがあります。
フィールド | タイプ | 必要性 | 説明 |
|---|---|---|---|
| string | 必須 | 削除するインデックスを含むコレクションの名前。 |
| string | 条件付き |
フィールドまたは |
| string | 条件付き | 削除するインデックスの名前。 フィールドまたは |
動作
dropSearchIndexコマンドの実行後、コマンドからの応答を受け取ってからインデックスが削除されるまでの間にタイムラグが生じる可能性があります。
検索インデックスのステータスを確認するには、 $listSearchIndexes集計ステージを使用します。 インデックスが削除されると、そのインデックスは$listSearchIndexesの出力に表示されなくなります。
アクセス制御
配置でアクセス制御が強制される場合、 dropSearchIndexコマンドを実行するユーザーは、データベースまたはコレクションに対するdropSearchIndex特権アクションを持っている必要があります。
{ resource: { db : <database>, collection: <collection> }, actions: [ "dropSearchIndex" ] }
組み込みのdbAdmin } ロールとreadWriteロールによってdropSearchIndex特権が付与されます。 次の例では、 qaデータベースでreadWriteロールを付与しています。
db.grantRolesToUser( "<user>", [ { role: "readWrite", db: "qa" } ] )
出力
dropSearchIndexコマンドが成功すると、次の結果が返されます。
{ ok: 1 }
例
次の例では、 contactsコレクションにあるsearchIndex01という名前の検索インデックスを削除します。
db.runCommand( { dropSearchIndex: "contacts", name: "searchIndex01" } )