Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

db.runCommand() (método de mongosh)

db.runCommand(command, [options])

Proporciona un asistente para ejecutar lo especificado comando de base de datos. Este es el método preferido para emitir comandos de base de datos, ya que proporciona una interfaz coherente entre la shell y los drivers.

Parameter
Tipo
Descripción

command

Documento o string

Documento o string que especifica el comando. Si se especifica como una cadena, db.runCommand() transforma la cadena en un documento.

options

Documento

A partir de mongosh 2.0, las opciones que especifican cómo mongosh ejecuta el comando.

options.readPreference

Preferencia de lectura para ejecutar el comando. Si no se especifica, el valor por defecto es primary. db.runCommand() ignora cualquier otra configuración global de preferencia de lectura establecida, incluyendo el uso de setReadPref() o especificar readPreference en una cadena de conexión.

En mongosh 1.x, db.runCommand() no acepta un argumento options. Para configurar la preferencia de lectura, utiliza Mongo.setReadPref() o especifica readPreference en la cadena de conexión.

Para especificar un límite de tiempo en milisegundos, consultar Terminar operaciones en curso.

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.runCommand() ejecuta el comando en el contexto de la base de datos actual. Algunos comandos solo son aplicables en el contexto de la admin base de datos, y debes cambiar tu objeto db antes de ejecutar estos comandos o utilizar db.adminCommand().

A partir de mongosh 2.0, puedes especificar la preferencia de lectura para un comando con el argumento options. Si no especificas una preferencia de lectura, db.runCommand() por defecto es primary.

Advertencia

En mongosh 2.0, db.runCommand() ignora cualquier otra configuración global de preferencia de lectura establecida, incluidos Mongo.setReadPref() o especificar readPreference en una cadena de conexión.

En mongosh 1.x, db.runCommand() no acepta un argumento options. db.runCommand() utiliza la preferencia de lectura especificada mediante Mongo.setReadPref() o especificando readPreference en la cadena de conexión.

Los siguientes ejemplos muestran cómo usar db.runCommand() para ejecutar comandos de base de datos.

Este ejemplo muestra cómo usar db.runCommand() para ejecutar el comando hello.

db.runCommand( { hello: 1 } )

Para obtener detalles sobre la salida, consulta Salida de Hello.

Para obtener detalles sobre el comportamiento de la preferencia de lectura, consulte Preferencia de lectura.

Este ejemplo muestra cómo utilizar db.runCommand() para ejecutar el comando hello con la preferencia de lectura secondaryPreferred.

db.runCommand( { hello: 1 }, { readPreference: "secondaryPreferred" } )

Para obtener detalles sobre la salida, consulta Salida de Hello.

Para obtener detalles sobre el comportamiento de la preferencia de lectura, consulte Preferencia de lectura.

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.

Volver

db.rotateCertificates

En esta página