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

db.adminCommand()

Nesta página

  • Definição
  • 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 executarcomandos de banco de dados especificados no banco de dados 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 dados admin independentemente do contexto do banco 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 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.

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