Mongo.startSession()
Nesta página
Definição
Mongo.startSession(<options>)
Inicia umasessão para a conexão.
mongosh
atribui o ID da sessão aos comandos associados à sessão.Importante
Método mongosh
Esta página documenta um método
mongosh
. Esta não é a documentação para comandos de banco de dados nem drivers específicos de linguagem, como Node.js.Para o comando do banco de dados, consulte o comando
startSession
.Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.
Uma sessão só pode ser usada com o objeto
MongoClient
que criou a sessão. Uma única sessão não pode ser usada simultaneamente. As operações que usam uma única sessão devem ser executadas sequencialmente.O método
startSession()
pode receber um documento com opções de sessão. As opções disponíveis são:CampoDescriçãocausalConsistencyBoolean. Habilita ou desabilita a consistência causal da sessão.
Mongo.startSession()
habilitacausalConsistency
por padrão. Mutualmente exclusivo comsnapshot
.Depois de iniciar uma sessão, não é possível modificar sua configuração
causalConsistency
.A sessão pode ter a consistência causal habilitada, embora o objeto de conexão
Mongo()
possa ter a consistência causal desabilitada ou vice-versa. Para definir a consistência causal no objeto de conexão, consulteMongo.setCausalConsistency()
.readConcernDocumento. Especifica a read concern.
Para modificar a configuração após iniciar uma sessão, consulte
Session.getOptions().setReadConcern()
.readPreferenceDocumento. Especifica a read preference.
O documento readPreference contém o campo
mode
e o campo opcionaltags
:{ mode: <string>, tags: <array> } Para modificar a configuração após iniciar uma sessão, consulte
Session.getOptions().setReadPreference()
.retryWritesBooleano. Habilita ou desabilita a capacidade de repetir as escritas ao encontrar erros transitórios de rede.
Se você iniciar o
mongosh
com a opção--retryWrites
,retryWrites
estará habilitado por padrão paraMongo.startSession()
.Depois de iniciar uma sessão, não é possível modificar sua configuração
retryWrites
.snapshotBoolean. Permite leituras de snapshots para a sessão para MongoDB 5.0+ sistemas. Mutualmente exclusivo comcausalConsistency
.writeConcernDocumento. Especifica a write concern.
Para modificar a configuração após iniciar uma sessão, consulte
Session.getOptions().setWriteConcern()
.
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
Observação
Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Exemplos
O exemplo a seguir inicia uma sessão com consistência causal e retryable writes habilitadas no objeto de conexão Mongo()
associado à variável global db
mongosh
:
db = db.getMongo().startSession({retryWrites: true, causalConsistency: true}).getDatabase(db.getName());