コマンドの実行
MongoDatabase.runCommand()
メソッドを使用して、すべての未加工データベース操作を実行できます。 Raw データベース操作は、MongoDB Server CLI で直接実行できるコマンドです。 これらのコマンドには、サーバーの統計情報の取得やレプリカセットの初期化など、管理および診断タスクが含まれます。 MongoDatabase
のインスタンスでBson
コマンド オブジェクトを使用してrunCommand()
メソッドを呼び出し、未加工のデータベース操作を実行します。
Tip
これらのタスクは Java アプリケーションよりも shell で実装する方が速くて簡単であるため、可能な場合は Java ドライバーの代わりにMongoDB Shellを管理タスクに使用します。
runCommand()
メソッドはBson
オブジェクト形式のコマンドを受け入れます。 デフォルトでは、 runCommand
はデータベースコマンドの出力を含むorg.bson.Document
型のオブジェクトを返します。 任意の 2 つ目のパラメータとして、 runCommand()
の戻り値の型を指定できます。
例
次のサンプル コードでは、特定の MongoDB database から統計情報をリクエストするために、 dbStats
コマンドを送信します。
注意
この例では、接続 URI を使用して MongoDB のインスタンスに接続します。 MongoDB インスタンスへの接続の詳細については、「 接続ガイド 」を参照してください。
package usage.examples; import org.bson.BsonDocument; import org.bson.BsonInt64; import org.bson.Document; import com.mongodb.MongoException; import com.mongodb.client.MongoClient; import com.mongodb.client.MongoClients; import com.mongodb.client.MongoDatabase; import org.bson.conversions.Bson; public class RunCommand { public static void main(String[] args) { // Replace the uri string with your MongoDB deployment's connection string String uri = "<connection string uri>"; try (MongoClient mongoClient = MongoClients.create(uri)) { MongoDatabase database = mongoClient.getDatabase("sample_mflix"); try { Bson command = new BsonDocument("dbStats", new BsonInt64(1)); Document commandResult = database.runCommand(command); // Prints the database statistics System.out.println("dbStats: " + commandResult.toJson()); } catch (MongoException me) { // Prints a message if any exceptions occur during the command execution System.err.println("An error occurred: " + me); } } } }
上記のコマンドを実行すると、次のような出力が表示されます。
dbStats: {"db": "sample_mflix", "collections": 5, "views": 0, "objects": 75595, "avgObjSize": 692.1003770090614, "dataSize": 52319328, "storageSize": 29831168, "numExtents": 0, "indexes": 9, "indexSize": 14430208, "fileSize": 0, "nsSizeMB": 0, "ok": 1}
このページで言及されているクラスとメソッドについての追加情報については、次のリソースを参照してください。
runCommand() API ドキュメント
データベース コマンドサーバー マニュアル エントリ
dbStats Server マニュアル エントリ