Docs Menu
Docs Home
/
MongoDB Shell
/

メソッド

項目一覧

  • 管理メソッド
  • Atlas Search インデックス メソッド
  • 一括操作メソッド
  • コレクション メソッド
  • 接続方法
  • カーソル メソッド
  • データベース メソッド
  • 使用中の暗号化メソッド
  • ネイティブ メソッド
  • クエリプラン キャッシュ メソッド
  • レプリケーション メソッド
  • ロール マネジメント メソッド
  • セッション オブジェクト メソッド
  • サーバー ステータス メソッド
  • シャーディング メソッド
  • テレメトリー メソッド
  • トランザクション メソッド
  • ユーザー管理メソッド

次のドキュメントは、MongoDB Shell で利用可能なメソッドを示しています。 メソッドをクリックすると、構文や例えなどのドキュメントが MongoDB マニュアルで表示されます。

重要

shelltriggerのサーバーへの接続をリセットするメソッドは、開いているすべての サーバー セッション の終了を します。セッションが終了すると、進行中のすべての操作も終了されます。その場合、認証が有効になっている場合はクライアントは再認証を行う必要があります。

次のメソッドは shell の接続をリセットします。

  • db.auth

  • Mongo.setReadPref

  • Mongo.setReadConcern

方式
説明

admin データベースに対してコマンドを実行します。

現在進行中の操作を報告します。

指定された操作を終了します。

現在のmongodまたはmongosプロセスを正常かつ安全にシャットダウンします。

データベースをロックして書き込み操作を防ぎ、バックアップ操作を支援するには、ディスクへの書き込みをフラッシュします。

Atlas Search インデックスを使用すると、Atlas Search 内のデータをクエリできます。Atlas Search インデックスは、検索タームを含むドキュメントにタームをマッピングすることで、テキスト検索クエリの効率を高めます。

次の方法を使用して、Atlas Search インデックスを管理します。

重要

以下のメソッドは、MongoDB Atlas でホストされている配置でのみ実行できます。

名前
説明

指定されたコレクションに 1 つ以上の Atlas Search インデックスを作成します。

既存の Atlas Search インデックスを削除します。

指定されたコレクションの既存の Atlas Search インデックスに関する情報を返します。

既存の Atlas Search インデックスをアップデートします。

方式
説明

コレクションの新しいBulk()操作ビルダを初期化して返します。 ビルダは、MongoDB が一括して実行する書込み (write) 操作の順序付きリストを作成します。

コレクションの新しいBulk()操作ビルダを初期化して返します。 ビルダは、MongoDB が一括して実行する書込み (write) 操作の順序なしのリストを作成します。

単一のコレクションに対して一括して実行する書込み (write) 操作のリストを作成するために使われる一括操作ビルダを作成します。 ビルダをインスタンス化するには、 db.collection.initializeOrderedBulkOp() } メソッドまたはdb.collection.initializeUnorderedBulkOp()メソッドのいずれかを使用します。

Bulk()操作ビルダによって構築された操作リストを実行します。

アップデート操作または削除操作のクエリ条件を指定します。

一括操作をサポートするインデックスを指定するヒントオプションを設定します。

一括操作リストに 削除操作を追加します。

一括操作リストに 1 つのドキュメントの削除操作を追加します。

一括操作リストに 1 つのドキュメント置換操作を追加します。

一括操作リストに 1 つのドキュメントのアップデート操作を追加します。

一括操作リストにマルチアップデート操作 を追加します。 このメソッドは、既存のドキュメントの特定のフィールドをアップデートします。

更新操作または置換操作でアップサートオプションをtrueに設定します。

一括操作リストに 挿入操作 を追加します。

Bulk()オブジェクト内の操作とバッチの数を含む JSON document を返します。

Bulk()オブジェクト内の操作とバッチの数を含む JSON ドキュメントを string として返します。

方式
説明

一括書き込み操作機能を提供します。

mongosh 1.0.6では非推奨 。 代わりにdb.collection.countDocuments()またはdb.collection.estimatedDocumentCount()を使用してください。

コレクションまたはビューに含まれるドキュメント数を返します。 $group集計ステージを$sum式でラップします。

collectionまたはビュー内のドキュメントのおおよその数を返します。

コレクションにインデックスを構築します。

コレクションに 1 つ以上のインデックスを構築します。

コレクションのサイズを返します。 の出力でsize collStatsフィールドをラップします。

コレクション内の 1 つのドキュメントを削除します。

コレクション内の複数のドキュメントを削除します。

指定されたフィールドに対して異なる値を持つドキュメントの範囲を返します。

指定したコレクションをデータベースから排除します。

コレクションの指定されたインデックスを削除します。

コレクションのすべてのインデックスを削除します。

さまざまなメソッドのクエリ実行についての情報を返します。

コレクションまたはビューに対してクエリを実行し、カーソル オブジェクトを返します。

アトミックに修正して 1 つのドキュメントを返します。

クエリを実行し、1 つのドキュメントを返します。

1 つのドキュメントを検索して削除します。

1 つのドキュメントを検索して置き換えます。

1 つのドキュメントを検索してアップデートします。

コレクションの既存のインデックスを記述するドキュメントの配列を返します。

シャーディングされたコレクションのデータ配信統計を出力します。

シャーディングされたクラスター内のデータの状態に関する情報を返します。

コレクションに新しいドキュメントを挿入します。

コレクションに複数の新しいドキュメントを挿入します。

コレクションに対してmap-reduce集計操作を実行します。

コレクションのすべての既存のインデックスを再構築します。

コレクションの名前を変更します。

コレクションの 1 つのドキュメントを置き換えます。

コレクションの状態を報告します。 collStatsを囲むラッパーを提供します。

コレクションで使用される合計サイズをバイト単位で報告します。 storageSize出力のcollStats フィールドを囲むラッパーを提供します。

コレクションのインデックスによって使用される合計サイズを報告します。 totalIndexSize出力のcollStats フィールドを囲むラッパーを提供します。

コレクション内のすべてのドキュメントとすべてのインデックスのサイズを含む、コレクションの合計サイズを報告します。

コレクションの 1 つのドキュメントを変更します。

コレクションの複数のドキュメントを変更します。

コレクションを検証します。

コレクション上で変更ストリーム カーソルを開きます。

方式
説明

mongo shell または JavaScript ファイルからデータベース接続をインスタンス化するための JavaScript コンストラクター。

Mongo()メソッドには次のパラメータがあります。

Parameter
タイプ
説明

host

string

任意

ターゲット データベース接続の接続string 。

省略した場合、 Mongo()はデフォルトのポート27017でローカルホスト インターフェースへの接続をインスタンス化します。

autoEncryptionOpts

ドキュメント

任意

バージョン 4.2の新機能

クライアント側のフィールドレベル暗号化を有効にするための構成パラメーター。

autoEncryptionOpts は、データベース接続の既存のクライアント側のフィールドレベル暗号化構成を上書きします。 省略した場合、 Mongo()は現在のデータベース接続のクライアント側のフィールドレベル暗号化構成を継承します。

の使用方法と構文のドキュメントについては、 AutoEncryptionOpts を参照してください。

データベース オブジェクトを返します。

MongoDB 接続の 読み込み設定( read preference ) を設定します。

レプリカセットまたはシャーディングされたクラスターの変更ストリーム カーソルを開き、 adminlocalconfigデータベースを除き、データベース全体のすべての非システム コレクションについてレポートします。

方式
説明

クエリの動作を変更する特別なワイヤプロトコル フラグを追加します。

シャーディングされたコレクションに対するdb.collection.find()操作では、クエリされたシャードが 1 つ以上利用できない場合に、エラーではなく部分的な結果を返すことができます。

MongoDB が単一のネットワーク メッセージでクライアントに返すドキュメントの数を制御します。

次のクエリの例では、100 のバッチが返されます。

db.myCollection.find().batchSize(100)

カーソルを閉じて、関連付けられているサーバー リソースを解放します。

ログおよび system.profile コレクションのトレーサビリティを確保できるように、クエリにコメントを付けます。

カーソルがドキュメントそのものではなく、結果セット内のドキュメント数を返すように変更します。

カーソルのクエリ実行プランについて報告します。

カーソル内のすべてのドキュメントに JavaScript 関数を適用します。

カーソルにドキュメントがあり、反復処理できる場合はtrueを返します。

MongoDB がクエリに特定のインデックスを使用するように強制します。

カーソルが閉じている場合は true を返します。

カーソルが閉じており、かつ、バッチにオブジェクトが残っていない場合は true を返します。

結果セットを取得して反復処理することにより、クライアント側のカーソルにあるドキュメントの総数を計算します。

カーソルの結果セットのサイズを制限します。

カーソル内の各ドキュメントに関数を適用し、戻り値を配列に収集します。

カーソルに対して限定的な上位インデックスの限界を指定します。使用用途 cursor.hint()

カーソルに対する情報処理操作の累積時間制限をミリ秒単位で指定します。

カーソルに対して限定しない下位インデックスの限界を指定します。使用用途 cursor.hint()

カーソル内の次のドキュメントを返します。

非アクティブな状態が一定期間続いた後、カーソルを自動的に閉じないようサーバーへ指示します。

現在のカーソル バッチに残っているドキュメントの数を返します。

操作の db.collection.find()読み取り保証 を指定します。

カーソルに 読み込み設定( read preference)を指定して、クライアントがレプリカセット にクエリを送信する方法を制御します。

カーソルを変更して、ドキュメントではなくインデックス キーを返します。

カーソルによって返される各ドキュメントに内部 storage engine ID フィールドを追加します。

skip() } メソッドとlimit()メソッドを適用した後、カーソル内のドキュメントの数を返します。

一定数のドキュメントを渡したりスキップした後にのみ結果を返し始めるカーソルを返します。

ソート指定に従って順序付けられた結果を返します。

カーソルを末尾可能としてマークします。上限付きコレクションのカーソルに対してのみ有効です。

カーソルによって返されたすべてのドキュメントを含む配列を返します。

方式
説明

基礎のコレクションを必要としない管理および診断パイプラインを実行します。

新しいコレクションまたはビューを作成します。

指定された 集計パイプライン をソース コレクションまたはビューに適用して ビュー を作成します。

指定されたデータベースコマンドのヘルプ テキストを表示します。

現在のデータベースを削除します。

コレクションまたはビュー オブジェクトを返します。 mongo shell で有効でない名前を持つコレクションへのアクセスに使用されます。

現在のデータベース内のすべてのコレクションとビューのコレクション情報を返します。

現在のデータベース内のすべてのコレクションとビューを一覧表示します。

現在のデータベース接続を返します。

現在のログの冗長設定を返します。

現在のデータベースの名前を返します。

現在のプロファイル レベルslowOpThresholdMs設定、 slowOpSampleRate設定を返します。

指定されたデータベースへのアクセス権を提供します。

すべてのデータベースコマンドの一覧を提供します。

認証されたセッションを終了します。

シャーディング構成のフォーマットされたレポートと、シャーディングされたクラスター内の既存のチャンクに関する情報を出力します。

データベースの変更ストリーム カーソルを開き、すべての非システム コレクションについてレポートします。

注意

制限

  • 自動暗号化は、 mongoshが Atlas クラスターまたは MongoDB Enterprise Server に接続されている場合にのみ使用できます。 詳細については、 「クライアント側フィールドレベルの自動暗号化」 を参照してください。 このセクションにリストされているメソッドは手動暗号化に使用され、非エンタープライズ サーバーでサポートされています。

  • mongoshの Homebrew インストールでは自動暗号化は利用できません。

  • フィールドレベルの暗号化はmongoshバイナリでのみ使用可能であり、埋め込み Compass shell では使用できません。

方式
説明

暗号化されたフィールドを持つコレクションを作成します。

encryptedValue現在のデータベース接続がKMS (KMS )とキーヴォールトへのアクセスで構成されている場合は、指定されたencryptedValue を復号化します。

指定されたencryptionKeyIdencryptionAlgorithmを使用して指定された値を暗号化します。

現在のデータベース コレクションのClientEncryptionオブジェクトを返します。

現在のデータベース接続のKeyVaultオブジェクトを返します。

指定された UUID を持つデータ暗号化キーのkeyAltNames配列にkeyAltNameを追加します。

データベース接続に関連付けられたキーヴォールトにデータ暗号化キーを追加します。

指定された UUID を持つデータ暗号化キーを、データベース接続に関連付けられたキーヴォールトから削除します。

指定された UUID を持つデータ暗号化キーを取得します。 データ暗号化キーは、データベース接続に関連付けられたキーヴォールトに存在する必要があります。

指定されたkeyAltNameを持つすべてのデータ暗号化キーを取得します。

データベース接続に関連付けられたキーヴォールトに保存されているすべてのデータ暗号化キーを返します。

指定された UUID を持つデータ暗号化キーから、指定されたkeyAltNameを削除します。 データ暗号化キーは、データベース接続に関連付けられたキーヴォールトに存在する必要があります。

方式
説明

buildInfo()

mongoshビルドとドライバーの依存関係を説明する次の JSON 形式のドキュメントを返します。

{
version: '1.10.1',
distributionKind: 'packaged',
buildArch: 'x64',
buildPlatform: 'linux',
buildTarget: 'unknown',
buildTime: '2023-06-21T09:49:37.225Z',
gitVersion: '05ad91b4dd40382a13f27abe1ae8c3f9f52a38f7',
nodeVersion: 'v16.20.1',
opensslVersion: '3.1.1',
sharedOpenssl: true,
runtimeArch: 'x64',
runtimePlatform: 'darwin',
deps: {
nodeDriverVersion: '5.6.0',
libmongocryptVersion: undefined,
libmongocryptNodeBindingsVersion: undefined
}
}

cd()

現在の作業ディレクトリを指定されたパスに変更します。

isInteractive()

mongosh が対話モードまたはスクリプト モードのどちらで実行されているかを示すブール値を返します。

load()

shell に JavaScript ファイルをロードして実行します。

mongoshでは、 load()メソッドで読み込まれたスクリプトは__filename__dirname Node.js 変数をサポートしています。 これらの変数は、それぞれ、ロードされたスクリプトのファイル名とディレクトリを返します。 返される値は常に絶対パスです。

レガシーのmongo shell は、 load()メソッドでスクリプトのファイル名またはディレクトリにアクセスできません。

print()

指定されたテキストまたは変数を出力します。 print()printjson()console.log()のエイリアスです。

> print("hello world")
hello world
> x = "example text"
> print(x)
example text

pwd()

アクティブな shell セッションの現在の作業ディレクトリを返します。

quit()

現在の shell セッションを終了します。

sleep()

特定の期間、 mongo shell を一時停止します。

version()

mongoshインスタンスの現在のバージョンを返します。

方式
説明

コレクションのクエリプラン キャッシュ オブジェクトと関連するPlanCacheメソッドにアクセスするためのインターフェースを返します。

コレクションのすべてのキャッシュされたクエリプランを削除します。

コレクションのクエリプラン キャッシュを表示および変更するために使用できるメソッドを一覧表示します。

コレクションのプラン キャッシュ エントリの配列を返します。

方式
説明

レプリカセットにメンバーを追加します。 このメソッドを実行するには、レプリカセットのプライマリに接続する必要があります。

既存のレプリカセットに アービタ を追加します。

現在のレプリカセットの構成を含むドキュメントを返します。

mongoshが接続しているレプリカセット ノードを、指定された期間、プライマリになる資格がありません。 期間は秒単位で指定する必要があります。

oplog データからレプリカセットのステータスを返します。

新しいレプリカセットを初期化します。

mongoshが接続されているレプリカセット ノードの oplog を返します。

mongoshが接続されているレプリカセット ノードの oplog を返します。

db.printSecondaryReplicationInfo

レプリカセットの セカンダリ メンバーのステータスを返します。

これは rs.printSecondaryReplicationInfo() メソッドと同じです。 このメソッドの出力はdb.printSlaveReplicationInfo メソッドと同様です。db.printSlaveReplicationInfoメソッドはmongosh では非推奨です。代わりに db.printSecondaryReplicationInfo() を使用してください。

以下は、2 つのセカンダリ ノードがあるレプリカセットで発行されたrs.printSecondaryReplicationInfo()メソッドからの出力の例です。

source: rs2.example.net:27017
{
syncedTo: 'Tue Oct 13 2020 09:37:28 GMT-0700 (Pacific Daylight Time)',
replLag: '0 secs (0 hrs) behind the primary '
}
---
source: rs3.example.net:27017
{
syncedTo: 'Tue Oct 13 2020 09:37:28 GMT-0700 (Pacific Daylight Time)',
replLag: '0 secs (0 hrs) behind the primary '
}

rs.printSecondaryReplicationInfo

レプリカセットの セカンダリ メンバーのステータスを返します。

これはdb.printSecondaryReplicationInfo() rs.printSlaveReplicationInfomongoメソッドと同じです。このメソッドの出力は、レガシーの シェルの メソッドに似ています。rs.printSlaveReplicationInfo メソッドはmongosh では非推奨です。代わりにrs.printSecondaryReplicationInfo() を使用してください。

以下は、2 つのセカンダリ ノードがあるレプリカセットで発行されたrs.printSecondaryReplicationInfo()メソッドからの出力の例です。

source: rs2.example.net:27017
{
syncedTo: 'Tue Oct 13 2020 09:42:18 GMT-0700 (Pacific Daylight Time)',
replLag: '0 secs (0 hrs) behind the primary '
}
---
source: rs3.example.net:27017
{
syncedTo: 'Tue Oct 13 2020 09:42:18 GMT-0700 (Pacific Daylight Time)',
replLag: '0 secs (0 hrs) behind the primary '
}

既存のレプリカセットの構成を変更します。

ホスト名で指定されたノードをレプリカセットから削除します。

mongoshが接続しているレプリカセット メンバーのステータスを返します。

レプリカセットのプライマリをセカンダリにします。 このメソッドを実行するには、プライマリに接続する必要があります。

mongoshが接続されているレプリカセット メンバーのホスト名で指定されたレプリカセット メンバーに同期ターゲットをリセットします。

方式
説明

ロールを作成し、その権限を指定します。

ユーザー定義のロールを削除します。

データベースに関連付けられているすべてのユーザー定義のロールを削除します。

指定されたロールの情報を返します。

データベース内のすべてのユーザー定義のロールに関する情報を返します。

ユーザー定義のロールに権限を割り当てます。

指定した権限をユーザー定義ロールから排除します。

ユーザー定義ロールが権限を継承するロールを指定します。

継承されたロールをロールから削除します。

ユーザー定義ロールを更新します。

方式
説明

接続のセッションを開始します。

optimeを更新します。

セッションを終了します。

セッションで確認された最新のクラスター時間を返します。

shell のセッションから指定されたデータベースにアクセスします。

セッションの最後に確認された操作のタイムスタンプを返します。

セッションのオプションを返します。

セッションが終了したかどうかを指定するブール値を返します。

shell 内のセッションのオプション。 SessionOptions()オブジェクトにアクセスするには、 Session.getOptions()を使用します。

方式
説明

mongodインスタンスのロールを説明するドキュメントを返します。

mongodがレプリカセットのメンバーである場合、 isWritablePrimary } フィールドとsecondaryフィールドは、インスタンスがプライマリであるか、レプリカセットのセカンダリであるかどうかを報告します。

MongoDB インスタンスを実行しているシステムについての情報をドキュメントで返します。

指定コレクションのレイテンシ統計を返します。

すべてのコレクションから統計情報を返します。

mongodインスタンスのコンパイル パラメータを表示するドキュメントを返します。

MongoDB インスタンスの起動に使用されたランタイム オプションに関する情報をドキュメントで返します。

データベース プロセスの概要を示すドキュメントを返します。

現在のデータベースの状態を報告するドキュメントを返します。

mongodインスタンスのバージョンを返します。

方式
説明

シャーディングされたクラスターにシャードを追加します。

シャードをゾーンに関連付けます。シャーディングされたクラスター内のゾーンの構成をサポートします。

シャーディングされたコレクションのチャンクが、バランスが取れているかどうかに関する情報を返します。

バージョン 4.4 で追加

名前空間のチャンクの自動マージを無効にします。

バージョン 7.0 で追加

シャーディングされたクラスターの自動分割を無効にします。

Disables balancing on a single collection in a sharded database. シャーディングされたクラスター内の他のコレクションのバランシングには影響しません。

名前空間のチャンクの自動マージを有効にします。

バージョン 7.0 で追加

シャーディングされたクラスターの自動分割を有効にします。

特定のデータベースのシャーディングを有効にします。

バランサーが現在有効になっているかどうかを報告するブール値を返します。

シャーディングされたコレクションのデータ配信情報を返します。 sh.getShardedDataDistribution()は、shell $shardedDataDistribution集計パイプライン ステージの ヘルパー メソッドです。

バランサープロセスが現在チャンクを移行しているかどうかを報告するブール値を返します。

タグとシャードの間の関連付けを削除します。

sh.addShardTag()メソッドを使用して作成されたシャード タグからシャードキー値の範囲を削除します。 このメソッドは MongoDB 3.4のsh.removeRangeFromZone()のエイリアスになります。

コレクションのシャーディングを有効にします。

シャードキー の特定の値を分割点として使用し、既存の チャンク を 2 つに分割します。

クエリに一致するドキュメントを含む既存のチャンクを、ほぼ等しい 2 つのチャンクに分割します。

AutoMerger を有効にします。

バージョン 7.0 で追加

シャーディングされたクラスターの状態を報告します。

AutoMerger を無効にします。

バージョン 7.0 で追加

バランサーを無効にします。 この操作は、バランサーが進行中の操作を完了するのを待たずに、進行中の操作を終了する可能性があります。

シャードキーの範囲をゾーンに関連付けます。 シャーディングされたクラスター内の ゾーン の設定をサポートします。

これらのメソッドは、 mongoshが匿名のテレメトリ データを追跡するかどうかを構成します。 テレメトリはデフォルトで有効になっています。

mongoshがテレメトリで追跡するデータの詳細については、「テレメトリ オプションの構成 」を参照してください。

方式
説明

mongoshのテレメトリを無効にします。

mongoshのテレメトリを有効にします。

方式
説明

マルチドキュメントトランザクションを終了し、トランザクション内の操作によって行われたデータ変更をロールバックします。

マルチドキュメントトランザクションの操作によって行われた変更を保存し、トランザクションを終了します。

セッションに関連するマルチドキュメントトランザクションを開始します。

重要

passwordPrompt()メソッドは現在、 mongoshではサポートされていません。 そのため、次のメソッドを使用する場合は、パラメーターとしてパスワードを指定する必要があります。

方式
説明

データベースに対してユーザーを認証します。

既存のユーザーのパスワードを変更します。

新規ユーザーを作成します。

データベースに関連付けられているすべてのユーザーを削除します。

ユーザーを 1 人削除します。

指定されたユーザーに関する情報を返します。

データベースに関連付けられているすべてのユーザーに関する情報を返します。

指定されたユーザーのデータを更新します。

ロールとその権限をユーザーに付与します。

ユーザーからロールを削除します。

戻る

データ型