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

db.adminCommand()

Nesta página

  • Definição
  • Compatibilidade
  • Comportamento
  • Resposta
  • Exemplos

Importante

Método mongosh

Esta página documenta um método mongosh. Esta não é a documentação para um driver específico de linguagem, como Node.js.

Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.

db.adminCommand(command)

Fornece um auxiliar para executar comandos de banco de dados especificados no banco de dados do admin.

Parâmetro
Tipo
Descrição
command
documento ou string
Um comando do banco de dados, especificado no formulário documento ou como uma string. Se especificado como uma string, o comando não pode incluir quaisquer argumentos.

Esse método está disponível em implantações hospedadas nos seguintes ambientes:

  • MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem

Observação

Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas para todos os comandos, consulte Comandos sem suporte.

  • MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB

  • MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB

db.adminCommand() executa comandos no banco de banco de dados admin independentemente do contexto do banco de dados de dados em que é executado. Os seguintes comandos são equivalentes:

db.getSiblingDB("admin").runCommand(<command>)
db.adminCommand(<command>)

Para obter uma lista de comandos de banco de dados administrativos disponíveis, consulte Comandos de administração.

Observação

Para um mongod ou mongos executando com authorization, o usuário autorizado deve ter os privilégios apropriados para executar o comando do banco de dados. Consulte a documentação de referência do comando para obter mais informações sobre os requisitos de segurança.

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 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 exemplo a seguir utiliza o método db.adminCommand() para executar um comando killOp para finalizar uma operação com opid 724. killOp é um comando administrativo e deve ser executado no banco de dados admin.

db.adminCommand( { "killOp": 1, "op": 724 } )

O exemplo a seguir usa db.adminCommand() para executar o comando renameCollection de banco de dados administrativo para renomear a coleção orders no banco de dados test para orders-2016.

db.adminCommand(
{
renameCollection: "test.orders",
to: "test.orders-2016"
}
)

O exemplo a seguir utiliza o método db.adminCommand() para criar um usuário denominado bruce com a função dbOwner no banco de dados do admin.

Dica

Você pode usar o método passwordPrompt() em conjunto com vários métodos e comandos de gerenciamento de autenticação de usuário para solicitar a senha em vez de especificar a senha diretamente na chamada de método ou comando. No entanto, você ainda pode especificar a senha diretamente como faria com versões anteriores do shell mongo.

db.adminCommand(
{
createUser: "bruce",
pwd: passwordPrompt(), // or <cleartext password>
roles: [
{ role: "dbOwner", db: "admin" }
]
}
)

Voltar

Bancos de dados