Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

db.adminCommand() (método mongosh)

Importante

Método mongosh

Esta página documenta un método mongosh. No se trata de la documentación de un controlador específico de un lenguaje, como Node.js.

Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.

db.adminCommand(command)

Ofrece un asistente para ejecutar comandos de base de datos especificados contra la base de datos admin.

Parameter
Tipo
Descripción

command

Documento o string

Un comando de base de datos, especificado ya sea en forma de documento o como una string. Si se especifica como una string, el comando no puede incluir ningún argumento.

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

  • MongoDB Atlas: El servicio totalmente administrado 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 la compatibilidad de Atlas con 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 en la base de datos admin independientemente del contexto de base de datos en el 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 administrativos disponibles, consulte Comandos de base de datos.

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 se ejecutó correctamente (1) o no (0).

operationTime

El tiempo lógico de la operación. MongoDB utiliza el tiempo lógico para ordenar las operaciones. Solo para sets de réplicas y clústeres.

Si el comando no genera una entrada de oplog, 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.

$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 nodo.

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

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

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

El siguiente ejemplo utiliza db.adminCommand() para ejecutar el comando de base de datos administrativa renameCollection para 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"
}
)

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

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" }
]
}
)