Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

db.runCommand()

Nesta página

  • Definição
  • Comportamento
  • Exemplos
  • Resposta
db.runCommand(command, [options])

Fornece um auxiliar para executar comandos de banco de dados especificados. Esse é o método preferencial para emitir comandos de banco de dados, pois fornece uma interface consistente entre o shell e os drivers.

Parâmetro
Tipo
Descrição
command
documento ou string
Documento ou string que especifica o comando. Se especificado como uma string, db.runCommand() transforma a string em um documento.
options
documento
Iniciando no mongosh 2,0, opções que especificam como o mongosh executa o comando.

options.readPreference

Read preference segundo a qual executar o comando. Se não for especificado, o padrão seráprimary. db.runCommand() ignora qualquer outro conjunto de configuração global de preferência de leitura, incluindo usar setReadPref() ou especificar readPreference em uma connection string.

No mongosh 1.x, o db.runCommand() não utiliza um argumento do options. Para definir a read preference, utilize Mongo.setReadPref() ou especifique readPreference na connection string.

Para especificar um limite de tempo em milissegundos, consulte Terminar operações em execução.

db.runCommand() executa o comando no contexto do banco de dados atual. Alguns comandos são aplicáveis somente no contexto do banco de dados admin e você deve alterar o objeto db antes de executar esses comandos ou usar db.adminCommand().

Começando em mongosh 2.0, você pode especificar a preferência de leitura para um comando com o argumento options. Se você não especificar uma preferência de leitura, db.runCommand() retornará a primary por padrão.

Aviso

No mongosh 2.0, db.runCommand() ignora qualquer outra configuração global de read preference definida, incluindo o uso de Mongo.setReadPref() ou a especificação de readPreference em uma string de conexão.

No mongosh 1.x, o db.runCommand() não utiliza um argumento do options. db.runCommand() usa a read preference especificada usando Mongo.setReadPref() ou especificando readPreference na connection string.

Os seguintes exemplos mostram como utilizar o db.runCommand() para executar comandos do banco de dados.

Este exemplo mostra como utilizar o db.runCommand() para executar o comando hello.

db.runCommand( { hello: 1 } )

Para obter detalhes sobre a saída, consulte hello Output.

Para obter detalhes sobre o comportamento da preferência de leitura, consulte preferência de leitura.

Este exemplo mostra como usar db.runCommand() para executar o comando hello com a preferência de leitura secondaryPreferred.

db.runCommand( { hello: 1 }, { readPreference: "secondaryPreferred" } )

Para obter detalhes sobre a saída, consulte hello Output.

Para obter detalhes sobre o comportamento da preferência de leitura, consulte preferência de leitura.

O método retorna um documento de resposta que contém os seguintes campos:

Campo
Descrição
<command result>
Campos de resultados específicos do command que executou.
ok
Um número que indica se o comando obteve êxito (1) ou falhou (0).
operationTime

A hora lógica da operação. O MongoDB usa o tempo lógico para solicitar operações. Somente para conjuntos de réplicas e clusters fragmentados.

Se o comando não gerar uma entrada no oplog, por exemplo, uma operação de leitura, a operação não avançará o relógio lógico. Neste caso, operationTime retorna:

  • Para ler, consulte "local", "snapshot" e "linearizable", o carimbo de data/hora da entrada mais recente no oplog.

  • Para ler a questão "majority", a data e hora da entrada majority-acknowledged mais recente no oplog.

Para operações associadas a sessões causalmente consistentes, os drivers do MongoDB usam o tempo lógico para definir automaticamente as operações de leitura e o período afterClusterTime.

$clusterTime

Um documento que retorna a hora do cluster assinado. O tempo de cluster é um tempo lógico usado para ordenar operações. Somente para conjuntos de réplicas e clusters fragmentados. Apenas para uso interno.

O documento contém os seguintes campos:

  • clusterTime: timestamp da hora mais alta conhecida do cluster para o membro.

  • signature: um documento que contém o hash da hora do cluster e o ID da chave usada para assinar a hora do cluster.

Voltar

db.rotateCertificates