Menu Docs

Página inicial do DocsDesenvolver aplicaçõesManual do MongoDB

Usar comandos do banco de dados

Nesta página

  • Formulário de comando de banco de dados
  • Emissão de comandos
  • admin Comandos de banco de dados
  • Respostas de comando

A interface de comando MongoDB oferece acesso a todas as operações de banco de dados não CRUD. A busca de estatísticas do servidor, a inicialização de um conjunto de réplicas e a execução de uma aggregation pipeline ou de um trabalho de map-reduce são realizadas por meio de comandos.

Consulte Comandos do banco de dados para obter uma lista de todos os comandos classificados por função.

Você especifica um comando primeiro criando um documento BSON padrão cuja primeira chave é o nome do comando. Por exemplo, especifique o comando hello utilizando o seguinte documento BSON:

{ hello: 1 }

mongosh fornece um método auxiliar para executar comandos chamados db.runCommand(). A seguinte operação no mongosh executa o comando anterior:

db.runCommand( { hello: 1 } )

Muitos drivers fornecem um equivalente para o método db.runCommand() . Internamente, executar comandos com o db.runCommand() é equivalente a uma query especial da collection $cmd .

Muitos comandos comuns têm seus próprios ajudantes de shell ou wrappers em mongosh e drivers, como o método db.hello() em mongosh.

Você pode usar a opção maxTimeMS para especificar um limite de tempo para a execução de um comando, consulte Encerrar um comando para mais informações sobre o encerramento da operação.

Você deve executar alguns comandos no banco de dados admin. Normalmente, essas operações são semelhantes às seguintes:

use admin
db.runCommand( {buildInfo: 1} )

No entanto, há também um ajudante de comando que executa automaticamente o comando no contexto do banco de dados admin:

db.adminCommand( {buildInfo: 1} )

Para todos os comandos, o MongoDB 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 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.

O que é o MongoDB? →