Docs Menu
Docs Home
/ /

db.runCommand() (método mongosh)

db.runCommand(command, [options])

Proporciona un ayudante para ejecutar lo especificado Comandos de base de datos. Este es el método preferido para ejecutar comandos de base de datos, ya que proporciona una interfaz consistente entre el shell y los controladores.

Parameter
Tipo
Descripción

command

documento o cadena

Documento o cadena que especifica el comando. Si se especifica como cadena, db.runCommand() la transforma 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, consulte Terminar operaciones en ejecución.

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, por lo que debe modificar el db objeto antes de ejecutarlos o db.adminCommand() usar.

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 otro conjunto de configuración global de preferencia de lectura, incluido el uso de Mongo.setReadPref() o la especificación de 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 utilizar db.runCommand() para ejecutar el hello comando.

db.runCommand( { hello: 1 } )

Para obtener detalles sobre la salida,consulte hello Salida.

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

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

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

Para obtener detalles sobre la salida,consulte hello Salida.

Para obtener detalles sobre el comportamiento de 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 resultado específicos del 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 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, operationTime devuelve:

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

$clusterTime

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:

  • 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