Definición
Mongo.startSession(<options>)Comienza una sesión para la conexión.
mongoshasigna el ID de sesión a los comandos asociados con la sesión.Importante
Método mongosh
Esta página documenta un método
mongosh. Esta no es la documentación para los comandos de base de datos ni para los drivers específicos de lenguajes, como Nodo.js.Para el comando de base de datos, consulta el comando
startSession.Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.
Una sesión sólo se puede utilizar con el objeto
MongoClientque la creó. Una sola sesión no se puede utilizar de forma simultánea. Las operaciones que utilizan una única sesión deben ejecutarse de forma secuencial.El método
startSession()puede tomar un documento con opciones de sesión. Las opciones disponibles son:CampoDescripciónCoherencia causal
booleano. Habilita o deshabilita la coherencia causal para la sesión.
Mongo.startSession()habilitacausalConsistencypor defecto. Mutuamente excluyente consnapshot.Después de iniciar una sesión, no se puede modificar su configuración
causalConsistency.La sesión puede tener habilitada la consistencia causal incluso aunque el objeto de conexión
Mongo()tenga la consistencia causal deshabilitada o viceversa. Para establecer la coherencia causal en el objeto de conexión, consultaMongo.setCausalConsistency().readConcern
Documento. Especifica el nivel de consistencia de lectura.
Para modificar la configuración después de iniciar una sesión, consulta
Session.getOptions().setReadConcern().readPreference
Documento. Especifica la preferencia de lectura.
El documento readPreference contiene el campo
modey el campo opcionaltags:{ mode: <string>, tags: <array> } Para modificar la configuración después de iniciar una sesión, consulta
Session.getOptions().setReadPreference().retryWrites
booleano. Habilita o deshabilita la capacidad de reintentar guardados al encontrar errores de red transitorios.
Si inicias
mongoshcon la opción--retryWrites,retryWritesestá habilitado por defecto paraMongo.startSession().Después de iniciar una sesión, no se puede modificar su configuración
retryWrites.snapshot
booleano. Habilita lecturas de snapshot para la sesión en implementaciones de MongoDB 5.0+ . Mutuamente excluyente con
causalConsistency.writeConcern
documento. Especifica el nivel de confirmación de escritura (write concern).
Para modificar la configuración después de iniciar una sesión, consulta
Session.getOptions().setWriteConcern().
Compatibilidad
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.
Ejemplos
Lo siguiente inicia una sesión con coherencia causal y escrituras reintentables habilitadas en el objeto de conexión Mongo() asociado con la variable global db de mongosh:
db = db.getMongo().startSession({retryWrites: true, causalConsistency: true}).getDatabase(db.getName());