db.adminCommand()
重要
mongosh メソッド
このページでは、 mongosh
メソッドについて説明します。 これは Node.js などの言語固有のドライバーのドキュメントではありません。
MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。
定義
db.adminCommand(command)
指定された データベースコマンド を
admin
データベースに対して実行するためのヘルパーを提供します。Parameterタイプ説明command
ドキュメントまたは文字列
ドキュメント 形式または文字列として指定される データベースコマンド 。文字列として指定する場合、コマンドには引数を含めることはできません。
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
注意
このコマンドは、すべての MongoDB Atlas クラスターでサポートされています。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
動作
db.adminCommand()
は、実行されるデータベース コンテキストに関係なく、 admin
データベースに対してコマンドを実行します。 次のコマンドは同等です。
db.getSiblingDB("admin").runCommand(<command>) db.adminCommand(<command>)
使用可能な管理データベースコマンドの一覧については、「 管理コマンド」を参照してください。
注意
authorization
で実行中の mongod
、または mongos
の場合、承認されたユーザーはデータベースコマンドを実行するための適切な特権を持っている必要があります。セキュリティ要件の詳細については、コマンドの参考ドキュメントを参照してください。
応答
このメソッドは、次のフィールドを含む応答ドキュメントを返します。
フィールド | 説明 |
---|---|
<command result> | 実行された |
| コマンドが成功したか( |
| 操作の論理的な時間。MongoDB は論理時間を使用して操作を順序付けます。レプリカセットとシャーディングされたクラスターのみ。 コマンドが oplog エントリを生成しない場合(読み取り操作など)、その操作では論理クロックは進みません。この場合、
因果的に一貫性のあるセッションに関連付けられた操作の場合、MongoDB ドライバーは論理時間を使用して、読み取り操作と |
| 署名されたクラスター時間を返すドキュメント。クラスター時間は、操作の順序付けに使用される論理時間です。レプリカセットとシャーディングされたクラスターのみ。内部使用のみ。 このドキュメントには、以下のフィールドが含まれています。
|
例
killOp
次の例では、 db.adminCommand()
メソッドを使用してkillOp
コマンドを実行し、 opid 724
で操作を終了します。 killOp
は管理コマンドであり、 admin
データベースに対して実行する必要があります。
db.adminCommand( { "killOp": 1, "op": 724 } )
renameCollection
次の例では、 db.adminCommand()
を使用してrenameCollection
管理データベースコマンドを実行し、 test
データベース内のorders
コレクションの名前をorders-2016
に変更します。
db.adminCommand( { renameCollection: "test.orders", to: "test.orders-2016" } )
createUser
次の例では、db.adminCommand()
メソッドを使用して、admin
データベース上に dbOwner
ロールを持つ bruce
という名前のユーザーを作成します。
Tip
passwordPrompt()
メソッドを様々なユーザー認証管理メソッドやコマンドと組み合わせて使用すると、メソッドやコマンドの呼び出しでパスワードを直接指定する代わりに、パスワードの入力を求めるプロンプトが表示されます。ただし、以前のバージョンの mongo
シェルと同様に、パスワードを直接指定することもできます。
db.adminCommand( { createUser: "bruce", pwd: passwordPrompt(), // or <cleartext password> roles: [ { role: "dbOwner", db: "admin" } ] } )