Definição
startSessionO comando inicia
startSessionuma nova sessão lógica para uma sequência de operações.Dica
In
mongosh, this command can also be run through theMongo.startSession()helper method.Helper methods are convenient for
mongoshusers, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.
Compatibilidade
Esse comando 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
Sintaxe
O comando tem a seguinte sintaxe:
db.runCommand( { startSession: 1 } )
To run startSession, use the db.runCommand( { <command> } ) method.
db.runCommand( { startSession: 1 } )
Importante
featureCompatibilityVersion deve ser 3.6 ou superior para usar o startSession comando.
Comportamento
Se o sistema impuser autenticação/ autorização, você deverá estar autenticado para executar o comando. O startSession startSession usuário que executa é proprietário da sessão criada e somente esse usuário pode usar a sessão.
Se a implantação não impor autenticação/autorização, uma sessão criada não terá proprietário e poderá ser usada por qualquer usuário em qualquer conexão. Se o usuário autenticar e criar uma sessão para uma implantação que não imponha autenticação/autorização, ele será o proprietário da sessão. No entanto, qualquer usuário em qualquer conexão pode usar a sessão.
Se a implantação fizer a transição para a autenticação sem nenhum tempo de inatividade, as sessões sem proprietário não poderão ser usadas.
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.
Saída
Além do status e do tempo de operação do comando, o startSession retorna as seguintes informações específicas da sessão:
Campo | Tipo | Descrição | |
|---|---|---|---|
| Documento | O documento que contém a parte do Identificador Universalmente Único (UUID) de 16 bytes do identificador da sessão. O identificador da sessão consiste neste UUID concatenado com o hash das credenciais do usuário autenticado. | |
| número | A quantidade de tempo, em minutos, desde o último cliente que usou uma sessão para permanecer ativa antes de expirar. Por padrão, as sessões têm um tempo limite de expiração de 30 minutos. Para alterar o valor, defina o parâmetro |