Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
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 shell. Sin embargo, algunos métodos heredados no están disponibles en mongosh.

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)

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

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

Novedad 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 db.adminCommand() para crear un usuario llamado bruce con el rol dbOwner en la base de datos admin.

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