はじめに
This page contains mongosh methods.
注意
MongoDB の JavaScript
これらのメソッドは JavaScript を使用しますが、MongoDB とのほとんどのやり取りでは JavaScript は使用されず、やり取りするアプリケーションの言語で慣用的なドライバーが使用されます。
ネイティブ メソッド
The methods listed in this section are mongosh functional replacements for the native methods that were available in the legacy mongo shell. These methods are not exact replacements: output formats and some functionality may differ from the corresponding legacy methods.
In addition to these methods, the mongocompat snippet provides access to legacy mongo shell APIs.
注意
次の表では、 <path>と<filename>は文字列であり、引用符で囲む必要があります。
// process.chdir( <path> ) process.chdir( "./data/incoming" )
レガシー メソッド名 | replacement | ||
|---|---|---|---|
| 指定されたファイルの内容を返します レガシーの | ||
| Returns the hostname of the system running | ||
| shell が使用するメモリを報告するドキュメントを返します。 | ||
| shell を実行しているコンピューターのホスト名を返します。 | ||
| Returns a boolean indicating whether | ||
| ディレクトリ内の各オブジェクトの名前とタイプを指定するドキュメントの配列を返します。 | ||
| shell に JavaScript ファイルをロードして実行します。
| ||
| 現在のディレクトリ内のファイルの一覧を返します。 | ||
| 指定されたファイルのmd5ハッシュを返します。 | ||
| 指定したパスにディレクトリを作成します。 | ||
| 現在の shell セッションを終了します。 | ||
| 指定したファイルをローカル ファイル システムから削除します。 | ||
| 指定されたミリ秒数だけ休止します。 | ||
| Returns the current version of | ||
| Windows で実行中の shell の場合は | ||
|
|
Atlas Search インデックス
バージョン 7.0 の新機能 (6.0.7 以降でも利用可能)
MongoDB Search インデックス を使用すると、MongoDB Search 内のデータをクエリできます。また、MongoDB Vector Search インデックス を使用すると、MongoDB Vector Search 内のデータをクエリできます。MongoDB Search および MongoDB Vector Search インデックスは、期間を含むドキュメントに期間をマッピングすることで、テキスト検索クエリの効率を高めます。
MongoDB Search および MongoDB Vector Search インデックスを管理するには、次の方法を使用します。
名前 | 説明 |
|---|---|
指定されたコレクションまたはビューにMongoDB SearchインデックスまたはMongoDB ベクトル検索インデックスを作成します。 | |
既存のMongoDB SearchインデックスまたはMongoDB ベクトル検索インデックスを削除します。 | |
指定されたコレクションまたはビューの既存のMongoDB Search インデックスまたはMongoDB ベクトル検索インデックスに関する情報を返します。 | |
既存のMongoDB SearchインデックスまたはMongoDB Vector Searchインデックスを更新します。 |
Atlas Stream Processing
Atlas Stream プロセッサを使用すると、保存データで使用するのと同じデータ モデルとクエリ API を使用して、連続データのストリームに対して集計操作を実行できます。
ストリームプロセッサを管理するには、次のメソッドを使用します。
重要
以下のメソッドは、MongoDB Atlas でホストされている配置でのみ実行できます。
名前 | 説明 |
|---|---|
ストリーム プロセッサを作成します。 | |
現在のストリーム処理ワークスペースに存在するすべてのストリーム プロセッサを一覧表示します。 | |
エフェメラル ストリーム プロセッサを作成します。 | |
既存のストリーム プロセッサを削除します。 | |
既存のストリーム プロセッサを変更します。 | |
現在実行中のストリーム プロセッサからサンプル結果の配列を返します。 | |
既存のストリーム プロセッサを起動します。 | |
既存のストリーム プロセッサを要約する統計を返します。 | |
現在実行中のストリーム プロセッサを停止します。 |
コレクション
名前 | 説明 |
|---|---|
シャードキーを評価するためのメトリクスを計算します。 | |
集計パイプラインへのアクセス権を提供します。 | |
一括書き込み操作機能を提供します。 | |
成功または失敗のオブジェクトを返すには、 | |
コレクションのクエリ サンプリングを構成します。 | |
コレクションまたはビュー内のドキュメントの数を返すには、 | |
コレクションにインデックスを構築します。 | |
コレクションに 1 つ以上のインデックスを構築します。 | |
コレクション内の 1 つのドキュメントを削除します。 | |
コレクション内の複数のドキュメントを削除します。 | |
指定されたフィールドに対して異なる値を持つドキュメントの範囲を返します。 | |
指定したコレクションをデータベースから排除します。 | |
コレクションの指定されたインデックスを削除します。 | |
コレクションのすべてのインデックスを削除します。 | |
コレクションまたはビュー内のドキュメントのおおよその数を返すには、 | |
さまざまなメソッドのクエリ実行についての情報を返します。 | |
コレクションまたはビューに対してクエリを実行し、カーソル オブジェクトを返します。 | |
アトミックに修正して 1 つのドキュメントを返します。 | |
クエリを実行し、1 つのドキュメントを返します。 | |
1 つのドキュメントを検索して削除します。 | |
1 つのドキュメントを検索して置き換えます。 | |
1 つのドキュメントを検索してアップデートします。 | |
コレクションの既存のインデックスを記述するドキュメントの配列を返します。 | |
シャーディングされたクラスター内のコレクションの場合、 | |
シャーディングされたクラスターの内部診断方法。 | |
クエリ プランナーでインデックスを非表示にします。 | |
非推奨。別のメソッドについては、「レガシー mongo Shell との互換性の変更」を参照してください。 | |
コレクションに新しいドキュメントを挿入します。 | |
コレクションに複数の新しいドキュメントを挿入します。 | |
コレクションが 上限付きコレクションかどうかを報告します。 | |
コレクションのレイテンシ統計を返します。 | |
map-reduce スタイルのデータ集計を実行します。 | |
コレクションのすべての既存のインデックスを再構築します。 | |
コレクションからドキュメントを削除します。 | |
コレクションの名前を変更します。 | |
コレクションの 1 つのドキュメントを置き換えます。 | |
コレクションの状態を報告します。 | |
コレクションで使用される合計サイズをバイト単位で報告します。 | |
コレクションのインデックスによって使用される合計サイズを報告します。 | |
コレクション内のすべてのドキュメントとすべてのインデックスのサイズを含む、コレクションの合計サイズを報告します。 | |
クエリ プランナーからインデックスを再表示します。 | |
非推奨。別のメソッドについては、「レガシー mongo Shell との互換性の変更」を参照してください。 | |
コレクションの 1 つのドキュメントを変更します。 | |
コレクションの複数のドキュメントを変更します。 | |
コレクションに変更ストリームを確立します。 | |
コレクションに対して診断操作を実行します。 |
Cursors
これらのメソッドは、基礎のクエリの実行方法を変更します。
名前 | 説明 |
|---|---|
クエリの動作を変更する特別なワイヤプロトコル フラグを追加します。 | |
MongoDB では、メモリ内 ソート操作の処理中にディスクの一時ファイルを使用して 100 メガバイトのシステム メモリ制限を超えるデータを保存できるようになります。 | |
MongoDB が単一のネットワーク メッセージでクライアントに返すドキュメントの数を制御します。 | |
カーソルを閉じて、関連付けられているサーバー リソースを解放します。 | |
| |
ログおよび system.profile コレクションのトレーサビリティを確保できるように、クエリにコメントを付けます。 | |
カーソルがドキュメントそのものではなく、結果セット内のドキュメント数を返すように変更します。 | |
追尾可能 (tailable) カーソルで | |
カーソルのクエリ実行プランについて報告します。 | |
カーソル内のすべてのドキュメントに JavaScript 関数を適用します。 | |
カーソルにドキュメントがあり、反復処理できる場合は true を返します。 | |
MongoDB がクエリに特定のインデックスを使用するように強制します。 | |
カーソルが閉じている場合は | |
カーソルが閉じており、かつ、バッチにオブジェクトが残っていない場合は | |
結果セットを取得して反復処理することにより、クライアント側のカーソルにあるドキュメントの総数を計算します。 | |
カーソルの結果セットのサイズを制限します。 | |
カーソル内の各ドキュメントに関数を適用し、戻り値を配列に収集します。 | |
カーソルに対して限定的な上位インデックスの限界を指定します。使用用途 | |
次のクエリ結果のアップデートを待機する制限をミリ秒単位で指定します。 | |
カーソルに対する情報処理操作の累積時間制限をミリ秒単位で指定します。 | |
カーソルに対して限定しない下位インデックスの限界を指定します。使用用途 | |
カーソル内の次のドキュメントを返します。 | |
非アクティブな状態が一定期間続いた後、カーソルを自動的に閉じないようサーバーへ指示します。 | |
現在のカーソル バッチに残っているドキュメントの数を返します。 | |
結果を読みやすい形式で表示するようカーソルを設定します。 | |
| |
カーソルに読み込み設定(read preference)を指定して、クライアントがレプリカセットにクエリを送信する方法を制御します。 | |
カーソルを変更して、ドキュメントではなくインデックス キーを返します。 | |
カーソルによって返される各ドキュメントに内部 storage engine ID フィールドを追加します。 | |
一定数のドキュメントを渡したりスキップした後にのみ結果を返し始めるカーソルを返します。 | |
ソート指定に従って順序付けられた結果を返します。 | |
カーソルを末尾可能としてマークします。上限付きコレクションのカーソルに対してのみ有効です。 | |
カーソルによって返されたすべてのドキュメントを含む配列を返します。 | |
反復に次の要素がある場合はそれを返し、ない場合は null を返します。 |
Databases
名前 | 説明 |
|---|---|
| |
基礎のコレクションを必要としない管理および診断パイプラインを実行します。 | |
データベースコマンドのヘルプ情報を返します。 | |
新しいコレクションまたはビューを作成します。一般的に、上限付きコレクションを作成するために使用されます。 | |
暗号化されたコレクションを作成します。 | |
ビューを作成します。 | |
現在進行中の操作を報告します。 | |
現在のデータベースを削除します。 | |
データベースをロックして書き込み操作を防ぎ、バックアップ操作を支援するには、ディスクへの書き込みをフラッシュします。 | |
| |
Returns a collection or view object. Used to access collections with names that are not valid in | |
現在のデータベース内のすべてのコレクションとビューのコレクション情報を返します。 | |
現在のデータベース内のすべてのコレクションとビューを一覧表示します。 | |
ログ メッセージの冗長レベルを返します。 | |
現在の接続の | |
現在のデータベースの名前を返します。 | |
現在のプロファイリング レベルとプロファイリングしきい値を反映するドキュメントを返します。 | |
レプリケーション統計を含むドキュメントを返します。 | |
指定されたデータベースへのアクセス権を提供します。 | |
レプリカセットの状態を報告するドキュメントを返します。 | |
一般的な | |
MongoDB が動作するシステムについての情報をドキュメントで返します。ラップ | |
指定された操作を終了します。 | |
一般的なデータベースコマンドの一覧を表示します。 | |
非推奨。認証されたセッションを終了します。 | |
すべてのコレクションから統計を出力します。 | |
プライマリから見たレプリカセットの状態のレポートを出力します。 | |
セカンダリから見たレプリカセットの状態を出力します。 | |
シャーディングの構成とチャンクの範囲のレポートを出力します。 | |
オンライン TLS 証明書ローテーションを実行します。 | |
データベースコマンドを実行します。 | |
MongoDB インスタンスの起動に使用されたランタイムについての情報をドキュメントで返します。 | |
データベース プロセスの状態の概要を示すドキュメントを返します。 | |
1 つのログ メッセージの冗長レベルを設定します。 | |
データベース プロファイリングの現在のレベルを変更します。 | |
現在のデータベースの状態を報告するドキュメントを返します。 | |
| |
データベースの変更ストリーム カーソルを開き、 |
クエリプラン キャッシュ
PlanCache メソッドには、コレクションのプラン キャッシュ オブジェクトからのみアクセスできます。 プラン キャッシュ オブジェクトを検索するには、 db.collection.getPlanCache()メソッドを使用します。
名前 | 説明 |
|---|---|
コレクションのクエリ プラン キャッシュ オブジェクトと関連する PlanCache メソッドにアクセスするためのインターフェースを返します。 | |
コレクションのすべてのキャッシュされたクエリプランをクリアします。特定のコレクションのプラン キャッシュ オブジェクト( | |
指定されたプランキャッシュクエリシェイプのキャッシュされたクエリプランをクリアします。特定のコレクションのプランキャッシュオブジェクト( | |
コレクションのクエリプラン キャッシュに使用できるメソッドを表示します。特定のコレクションのプラン キャッシュ オブジェクト( | |
コレクションのプラン キャッシュ情報を返します。特定のコレクションのプラン キャッシュ オブジェクト( |
一括操作
Tip
MongoDB は、一括書き込み操作を実行するための Mongo.bulkWrite() メソッドも提供します。
名前 | 説明 |
|---|---|
順序付けられた操作リストの | |
順序付けられていない操作リストの | |
複数の名前空間で一括書き込み操作を実行します。 | |
一括操作ビルダ。 | |
操作リストを一括で実行します。 | |
アップデート操作または削除操作のクエリ条件を指定します。 | |
| |
クエリ条件の照合を指定します。 | |
複数のドキュメントの削除操作を操作リストに追加します。 | |
1 つのドキュメントの削除操作を操作リストに追加します。 | |
更新操作または置換操作に使用するインデックスを指定します。 | |
| |
| |
1 つのドキュメントの置換操作を操作リストに追加します。 | |
1 つのドキュメントのアップデート操作を操作リストに追加します。 | |
| |
アップデート操作の | |
| |
挿入オペレーションを操作リストに追加します。 | |
| |
|
ユーザー管理
名前 | 説明 |
|---|---|
データベースに対してユーザーを認証します。 | |
既存のユーザーのパスワードを変更します。 | |
新規ユーザーを作成します。 | |
ユーザーを 1 人削除します。 | |
データベースに関連付けられているすべてのユーザーを削除します。 | |
指定されたユーザーに関する情報を返します。 | |
データベースに関連付けられているすべてのユーザーに関する情報を返します。 | |
ロールとその権限をユーザーに付与します。 | |
非推奨。データベースからユーザーを削除します。 | |
ユーザーからロールを削除します。 | |
ユーザー データをアップデートします。 | |
Prompts for the password as an alternative to specifying passwords directly in various |
ロール マネジメント
名前 | 説明 |
|---|---|
ロールを作成し、その権限を指定します。 | |
ユーザー定義のロールを削除します。 | |
データベースに関連付けられているすべてのユーザー定義のロールを削除します。 | |
指定されたロールの情報を返します。 | |
データベース内のすべてのユーザー定義のロールに関する情報を返します。 | |
ユーザー定義のロールに権限を割り当てます。 | |
指定した権限をユーザー定義ロールから排除します。 | |
ユーザー定義ロールが権限を継承するロールを指定します。 | |
継承されたロールをロールから削除します。 | |
ユーザー定義ロールを更新します。 |
複製
名前 | 説明 |
|---|---|
レプリカセットにノードを追加します。 | |
アービタをレプリカセットに追加します。 | |
レプリカセット構成ドキュメントを返します。 | |
現在のノードは一定期間、プライマリとして選挙を目指すことができません。 | |
レプリカセット関数の基本的なヘルプ テキストを返します。 | |
新しいレプリカセットを初期化します。 | |
プライマリから見たレプリカセットの状態を形式化されたレポートで出力します。 | |
セカンダリから見たレプリカセットの状態を形式化されたレポートで出力します。 | |
新しいレプリカセット構成オブジェクトを適用して、レプリカセットを再構成します。 | |
プライマリ セカンダリ アービタ(PSA)レプリカセット、または PSA アーキテクチャに変更されているレプリカセットに対して、いくつかの再構成の変更を安全に実行します。 | |
レプリカセットからノードを削除します。 | |
レプリカセットの状態に関する情報をドキュメントで返します。 | |
このレプリカセット ノードが同期する元ノードを設定し、デフォルトの同期ターゲット選択ロジックをオーバーライドします。 |
シャーディング
名前 | 説明 |
|---|---|
入力のハッシュ値を返します。 | |
クラスターまたはデータベースでシャーディング メタデータの不整合をチェックします。 バージョン7.0の新機能。 | |
コレクションでシャーディング メタデータの不整合をチェックします。 | |
コレクションが配置されているシャードと、コレクションがシャーディングされたかどうかを含むドキュメントを返します。 バージョン8.1の新機能。 | |
進行中の バージョン8.0の新機能。 | |
再シャーディング操作を中止します。 バージョン 5.0 の新機能。 | |
進行中のアンシャーディング操作を中止します。 | |
シャーディングされたクラスターにシャードを追加します。 | |
シャードをゾーンに関連付けます。シャーディングされたクラスター内のゾーンの設定をサポートします。 | |
シャーディングされたコレクションのチャンクが、バランスが取れているかどうかに関する情報を返します。 | |
クラスターのシャーディング メタデータが一貫していないかどうかをチェックします。 バージョン7.0の新機能。 | |
再シャーディング操作を強制し、書込みをブロックして完了します。 バージョン 5.0 の新機能。 | |
シャーディングされたクラスターの自動分割を無効にします。 MongoDB 6.0.3以降、 自動チャンク分割は実行されません。 これはバランシング ポリシーの改善によるものです。 自動分割コマンドは引き続き存在しますが、操作は実行されません。 | |
シャーディングされたデータベース内の単一のコレクションのバランシングを無効にします。シャーディングされたクラスター内の他のコレクションのバランシングには影響しません。 | |
シャーディングされたクラスター内の特定のコレクションのチャンク移行を無効にします。 | |
シャーディングされたクラスターの自動分割を有効にします。 MongoDB 6.0.3以降、 自動チャンク分割は実行されません。 これはバランシング ポリシーの改善によるものです。 自動分割コマンドは引き続き存在しますが、操作は実行されません。 | |
以前に | |
シャーディングされたクラスターの特定のコレクションに対して、以前に | |
データベースを作成します。 | |
バランサーが現在有効になっているかどうかを報告するブール値を返します。 | |
シャーディングされたコレクションのデータ配信情報を返します。 | |
| |
バランサーの状態を説明するドキュメントを返します。 | |
クラスターに構成シャードがあるかどうかを返します。その場合、 | |
シャーディングされたクラスター内の シャード を説明するドキュメントの配列を返します。 | |
シャーディングされたクラスター内のチャンクを移行します。 | |
シャーディングされていないコレクションを 1 つ別のシャードに移動します。 | |
シャード間で範囲を移動します。 | |
シャードキーの範囲とゾーンの間の関連付けを削除します。シャーディングされたクラスター内のゾーンの設定をサポートします。 | |
シャードとゾーンの間の関連付けを削除します。ゾーン シャーディングを管理するために使用します。 | |
コレクションのシャードキーを変更してデータの分散状況を変えるために、再シャーディング操作を開始します。 バージョン 5.0 の新機能。 | |
コレクションをシャーディングし、提供されたシャードキーを使用してデータを直ちに再配布します。 バージョン8.0の新機能。 | |
コレクションのシャーディングを有効にします。 | |
クエリに一致するドキュメントを含む既存のチャンクを、ほぼ等しい 2 つのチャンクに分割します。 | |
AutoMerger を有効にします。 バージョン7.0の新機能。 | |
バランサーを有効にし、バランシングが開始されるのを待ちます。 | |
シャーディングされたクラスターの状態を | |
AutoMerger を無効にします。 バージョン7.0の新機能。 | |
バランサーを無効にし、進行中のバランサー ラウンドが完了するのを待ちます。 | |
シャードキーの範囲をゾーンに関連付けます。シャーディングされたクラスター内のゾーンの設定をサポートします。 | |
内部。バランサーの状態が変化するのを待ちます。 | |
内部。バランサーが動作を停止するまで待ちます。 | |
内部。シャーディングされたクラスター内のいずれかの |
オブジェクト コンストラクター
名前 | 説明 |
|---|---|
base64 値からバイナリ オブジェクトを作成します。 | |
16 進値からバイナリ オブジェクトを作成します。 | |
バイナリ データ オブジェクトを返します。 | |
| |
日付オブジェクトを作成します。デフォルトでは、現在の日付を含む日付オブジェクトが作成されます。 | |
バイナリ データ オブジェクトを返します。 | |
ObjectId を返します。 | |
base64 値から ObjectId を作成します。 | |
16 進値から ObjectId を作成します。 | |
ObjectId のタイムスタンプ部分を返します。 | |
ObjectId の文字列表現を表示します。 | |
32 バイトの 16 進文字列を UUID BSON サブタイプに変換します。 | |
書き込みメソッドからの結果セットを囲むラッパー。 |
接続
名前 | 説明 |
|---|---|
MongoDB インスタンスとそのインスタンス上の指定されたデータベースに接続します。 | |
新しい接続オブジェクトを作成します。 | |
データベース オブジェクトを返します。 | |
データベースの一覧を返します。 | |
データベースとメタデータのリストを含むドキュメントを返します。 | |
現在アクティブな接続の接続stringを返します。 | |
接続オブジェクトの書込み保証 ( write concern ) を返します。 | |
MongoDB 接続の現在の読み込み設定(read preference)モードを返します。 | |
MongoDB 接続の読み込み設定(read preference)タグセットを返します。 | |
接続オブジェクトの因果整合性を有効または無効にします。 | |
MongoDB 接続の読み込み設定(read preference)を設定します。 | |
接続オブジェクトの書込み保証 ( write concern ) を設定します。 | |
接続オブジェクトでセッションを開始します。 | |
配置の変更ストリーム カーソルを開き、内部の | |
セッション オブジェクト。 | |
セッションのオプション オブジェクト。 |
使用中の暗号化
MongoDB supports two approaches to In-Use Encryption, Client-Side Field Level Encryption (CSFLE) and Queryable Encryption (QE). ClientEncryption is an abstraction used across drivers and mongosh that encapsulates operations for both CSFLE and QE. However, some methods are specific to one feature.
注意
The mongosh ClientEncryption methods require a database connection with in-use encryption enabled. If the current database connection was not initiated with in-use encryption enabled, either:
Use the
mongoshcommand line options to establish a connection with the required options. The command line options only support the Amazon Web Services KMS provider for CMK management.
エイリアスを持つコマンドがグループ化されます。
名前 | CSFLE | QE | 説明 |
|---|---|---|---|
✓ | ✓ | 現在の MongoDB 接続のキーヴォールト オブジェクトを返します。 | |
✓ | ✓ | クライアント側のフィールドレベル暗号化で使用するデータ暗号化キーを作成します。 | |
✓ | ✓ | 指定されたデータ暗号化キーをキーヴォールトから削除します。 | |
✓ | ✓ | 指定されたデータ暗号化キーをキーヴォールトで検索します。 | |
✓ | ✓ | キーヴォールト内のすべてのキーを検索します。 | |
✓ | ✓ | 指定されたデータ暗号化キーに、キーの別名を関連付けます。 | |
✓ | ✓ | 指定されたデータ暗号化キーからキーの別名を削除します。 | |
✓ | ✓ | 指定されたキーの別名を持つキーを検索します。 | |
✓ | ✓ | 複数のデータキーを復号化し、新しいマスターキーで再暗号化します。 | |
✓ | ✓ | フィールドの明示的な暗号化および復号化をサポートするためのクライアント暗号化オブジェクトを返します。 | |
✓ | ✓ | 暗号化されたフィールドを持つコレクションを作成します。 | |
✓ | ✓ | 指定されたデータ暗号化キーと暗号化アルゴリズムを使ってフィールドを暗号化します。 | |
✓ | 指定されたデータ暗号化のキーと暗号化オプションを使用してクエリ式を暗号化します。 | ||
✓ | ✓ | 関連付けられたデータ暗号化キーと暗号化アルゴリズムを使ってフィールドを復号化します。 |