Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Databases

db.adminCommand()

Importante

Método mongosh

Esto es un mongosh método. Esto no es la documentación de Node.js u otros métodos específicos del controlador de lenguaje de programación.

En la mayoría de los casos, los métodos mongosh funcionan de la misma manera que los métodos tradicionales mongo Métodos de shell. Sin embargo, algunos métodos heredados no están disponibles mongosh en.

Para la documentación heredada de mongo shell, revisa la documentación de la versión correspondiente de MongoDB Server:

Para los controladores de la API de MongoDB, consultar la documentación específica del controlador de MongoDB para cada lenguaje.

db.adminCommand(command)

Proporciona un ayudante para ejecutar comandos de base de datos específicos contra la admin base de datos.

Parameter
Tipo
Descripción

command

Documento o string

Un comando de base de datos, especificado en formato de documento o como cadena. Si se especifica como cadena, el comando no puede incluir argumentos.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Nota

Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

db.adminCommand() ejecuta comandos contra la base de datos admin independientemente del contexto de la base de datos en el que se ejecuta. Los siguientes comandos son equivalentes:

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

Para obtener una lista de los comandos de base de datos administrativos disponibles, consulta Comandos de administración.

Nota

Para un mongod o mongos que se ejecute con authorization, el usuario autorizado debe contar con los privilegios apropiados para ejecutar el comando de la base de datos. Consulte la documentación de referencia del comando para obtener más información sobre los requisitos de seguridad.

El método devuelve un documento de respuesta que contiene los siguientes campos:

Campo
Descripción

<command result>

Campos de resultados específicos para el/la command que se ejecutó.

ok

Un número que indica si el comando tuvo éxito (1) o falló (0).

operationTime

El tiempo lógico de la operación realizada, representado en MongoDB por la marca de tiempo de la entrada del registro de operaciones (oplog). Solo para sets de réplicas y clústeres

Si el comando no genera una entrada en el registro de operaciones (por ejemplo, una operación de lectura), la operación no avanza el reloj lógico. En este caso, operationTime devuelve:

Para las operaciones asociadas con sesiones causalmente coherentes, los drivers de MongoDB utilizan el tiempo lógico para establecer automáticamente el período de Operaciones de lectura y afterClusterTime.

Novedades en la versión 3.6.

$clusterTime

Un documento que devuelve el tiempo de clúster firmado. El tiempo de clúster es un tiempo lógico utilizado para el ordenamiento de las operaciones. Sólo para sets de réplicas y clústeres fragmentados. Sólo para uso interno.

El documento contiene los siguientes campos:

  • clusterTime: marca de tiempo del tiempo de clúster más alto conocido para el miembro.

  • signature: un documento que contiene el hash del tiempo del clúster y el id de la clave utilizada para firmar el tiempo del clúster.

Novedades en la versión 3.6.

El siguiente ejemplo utiliza el método db.adminCommand() para ejecutar un comando killOp para terminar una operación con opid 724. killOp es un comando administrativo y debe ejecutarse en la base de datos admin.

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

El siguiente ejemplo utiliza db.adminCommand() para ejecutar el comando administrativo de base de datos renameCollection para renombrar la colección orders en la base de datos test a orders-2016.

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

El siguiente ejemplo utiliza el método para crear un usuario db.adminCommand() llamado bruce con el rol en dbOwner la admin base de datos.

Tip

Puede usar el método passwordPrompt() en conjunto con diversos métodos/comandos de autenticación/gestión de usuarios para solicitar la contraseña en lugar de especificarla directamente en la llamada del método/comando. Sin embargo, aún puedes especificar la contraseña directamente como lo harías con versiones anteriores del shell mongo.

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

Volver

Databases

En esta página