Importante
Método mongosh
Esta página documenta una Método mongosh. Esta no es la documentación de un controlador específico del lenguaje, como Node.js.
Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.
Definición
db.adminCommand(command)Proporciona un ayudante para ejecutar lo especificado comandos de base de datos contra la
adminbase de datos.ParameterTipoDescripcióncommanddocumento o cadena
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.
Compatibilidad
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.
Comportamiento
db.adminCommand() ejecuta comandos en la admin base de datos, independientemente del contexto de la base de datos en la que se ejecute. Los siguientes comandos son equivalentes:
db.getSiblingDB("admin").runCommand(<command>) db.adminCommand(<command>)
Para obtener una lista de los comandos de base de datos administrativa disponibles, consulte Comandos de administración.
Nota
Para un mongod o que mongos authorization se ejecuta con, el usuario autorizado debe tener los privilegios adecuados para ejecutar el comando de base de datos. Consulte la documentación de referencia del comando para obtener más información sobre los requisitos de seguridad.
Respuesta
El método devuelve un documento de respuesta que contiene los siguientes campos:
Campo | Descripción |
|---|---|
<command result> | Campos de resultado específicos del |
| Un número que indica si el comando tuvo éxito ( |
| El tiempo lógico de la operación. MongoDB utiliza el tiempo lógico para ordenar las operaciones. Solo para conjuntos de réplicas y clústeres fragmentados. 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,
Para las operaciones asociadas con sesiones causalmente consistentes, los controladores de MongoDB utilizan el tiempo lógico para establecer automáticamente las operaciones de lectura y el período. |
| Un documento que devuelve la hora firmada del clúster. La hora del clúster es una hora lógica que se utiliza para ordenar las operaciones. Solo para conjuntos de réplicas y clústeres fragmentados. Solo para uso interno. El documento contiene los siguientes campos:
|
Ejemplos
killOp
El siguiente ejemplo utiliza el métododb.adminCommand()para ejecutar un comandokillOppara finalizar una operación con opid 724. killOpes un comando administrativo y debe ejecutarse contra la base de datos admin.
db.adminCommand( { "killOp": 1, "op": 724 } )
renameCollection
El siguiente ejemplo utilizadb.adminCommand()para ejecutar el comando de base de datos administrativarenameCollectionpara cambiar el nombre de la colección orders en la base de datos test a orders-2016.
db.adminCommand( { renameCollection: "test.orders", to: "test.orders-2016" } )
createUser
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
Puedes usar el método passwordPrompt() en conjunto con varios métodos y comandos de gestión de autenticación de usuarios para solicitar la contraseña en lugar de especificar la contraseña directamente en la llamada al método o comando. Sin embargo, aún puedes especificar la contraseña directamente como lo harías con las versiones anteriores del shell mongo.
db.adminCommand( { createUser: "bruce", pwd: passwordPrompt(), // or <cleartext password> roles: [ { role: "dbOwner", db: "admin" } ] } )