Menu Docs
Página inicial do Docs
/ /
Exemplos de uso

Execute um comando

Você pode executar todas as operações do banco de dados bruto utilizando o método MongoDatabase.runCommand(). Uma operação de banco de dados bruto é um comando que você pode executar diretamente na CLI do MongoDB Server. Esses comandos incluem tarefas administrativas e de diagnóstico, como buscar estatísticas do servidor ou inicializar um conjunto de réplicas. Chame o método runCommand() com um objeto de comando Bson em uma instância de um MongoDatabase para executar sua operação de banco de dados bruto.

Dica

Use o MongoDB Shell para tarefas administrativas em vez do driver Kotlin sempre que possível, já que essas tarefas geralmente são mais rápidas e fáceis de implementar com a shell do que em um aplicativo Kotlin.

O método runCommand() aceita um comando na forma de um objeto Bson. Por padrão, o runCommand retorna um objeto do tipo org.bson.Document contendo a saída do comando do banco de dados. Você pode especificar um tipo de retorno para runCommand() como um segundo parâmetro opcional.

No código de amostra a seguir, enviamos o comando dbStats para solicitar estatísticas de um banco de dados MongoDB específico.

Observação

Esse exemplo se conecta a uma instância do MongoDB usando um URI de conexão. Para saber mais sobre como se conectar à sua instância do MongoDB , consulte oguia de conexão .

import com.mongodb.MongoException
import com.mongodb.kotlin.client.coroutine.MongoClient
import kotlinx.coroutines.runBlocking
import org.bson.BsonDocument
import org.bson.BsonInt64
import org.bson.json.JsonWriterSettings
fun main() = runBlocking {
// Replace the uri string with your MongoDB deployment's connection string
val uri = "<connection string uri>"
val mongoClient = MongoClient.create(uri)
val database = mongoClient.getDatabase("sample_mflix")
try {
val command = BsonDocument("dbStats", BsonInt64(1))
val commandResult = database.runCommand(command)
println(commandResult.toJson(JsonWriterSettings.builder().indent(true).build()))
} catch (me: MongoException) {
System.err.println("An error occurred: $me")
}
mongoClient.close()
}
{
"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
}

Para obter informações adicionais sobre as classes e métodos mencionados nesta página, consulte os seguintes recursos:

Voltar

Valores de campo distintos