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
/ /

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 predeterminado primary es. db.runCommand() ignora cualquier otra configuración global de preferencia de lectura, incluyendo el uso de o setReadPref() la especificación readPreference de en una cadena de conexión.

En Mongosh 1.x, db.runCommand() no acepta el argumento options. Para establecer la preferencia de lectura, use Mongo.setReadPref() o especifique 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 se puede especificar la preferencia de lectura de un comando con el argumento "opciones". Si no se especifica una preferencia de lectura, el valor predeterminado dedb.runCommand() primaryes.

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 toma un argumento options. db.runCommand() utiliza la preferencia de lectura especificada al usar Mongo.setReadPref() o al especificar readPreference en la cadena de conexión.

Los siguientes ejemplos muestran cómo utilizar 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 tuvo éxito (1) o falló (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 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.

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

Volver

db.rotateCertificates

En esta página