Usar comandos do banco de dados
Nesta página
A interface de comando MongoDB fornece acesso a todas as operações de banco de dados 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 agregação pipeline ou de um tarefa 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.
Formulário de comando de banco de dados
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 }
Emissão de comandos
mongosh
fornece um método auxiliar para executar comandos chamados db.runCommand()
. A operação seguinte em mongosh
executa o comando anterior:
db.runCommand( { hello: 1 } )
Muitos Drivers fornecem um equivalente para o método db.runCommand()
. Internamente, executar comandos com db.runCommand()
é equivalente a uma consulta especial em relação à coleção $cmd.
Muitos comandos comuns têm seus próprios assistentes 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.
admin
Comandos de banco de dados
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} )
Respostas de comando
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 executada, representada no MongoDB pelo carimbo de data/hora da entrada do oplog. 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,
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 Novidade na versão 3.6. |
$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:
Novidade na versão 3.6. |