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

db.adminCommand()

Nesta página

  • Definição
  • Comportamento
  • Resposta
  • Exemplos

Importante

Método mongosh

Este é um método mongosh . Esta não é a documentação de Node.js ou de outros métodos de driver específicos da linguagem de programação.

Na maioria dos casos, os métodos mongosh funcionam da mesma forma que os métodos legado do shell mongo . No entanto, alguns métodos legado não estão disponíveis em mongosh.

Para a documentação do shell legado mongo, consulte a documentação para a release correspondente do MongoDB Server:

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

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.

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 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, 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.

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:

  • 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.

Novidade na versão 3.6.

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/comandos de autenticação/gerenciamento de usuário para solicitar a senha em vez de especificar a senha diretamente na chamada de método/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