Definición
Mongo.startSession(<options>)Inicia 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. No se trata de la documentación de comandos de base de datos ni de controladores específicos de lenguajes de programación, como Node.js.Para el comando de base de datos, consulta el comando
startSession.Para obtener información sobre los controladores de la API de MongoDB, consulte la documentación del controlador 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 consistencia 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 inicia
mongoshcon la opción--retryWrites,retryWritesse habilita de forma predeterminada 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 administrado 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 la compatibilidad de Atlas con 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 consistencia 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());