📜  MongoDB会话命令

📅  最后修改于: 2020-11-23 01:09:44             🧑  作者: Mango

MongoDB会话命令

MongoDB abortTransaction命令

该命令将回滚事务中终止多文档事务的操作中所做的任何数据更改。也就是说,该过程在事务中所做的更改尚未保存。

abortTransaction命令必须在会话中运行并针对admin数据库运行。

拒绝事务中的所有数据更改,直到事务结束时才出现。

句法:

{
  abortTransaction: 1,
  txnNumber: ,
  writeConcern: ,
  autocommit: false
}

MongoDB commitTransaction命令

该命令用于保存操作所做的更改。

要运行commitTransaction命令,它必须在会话中运行并针对admin数据库运行。

您可以改用session.commitTransaction()。

在事务开始时,将显示事务中进行的所有数据更改并将其保存在事务之外。

句法:

{
  commitTransaction: 1,
  txnNumber: ,
  writeConcern: ,
  autocommit: false
 }

MongoDB endSessions命令

该命令用于结束指定的会话。它会覆盖会话在过期之前等待的超时时间。

为了标识要结束的用户会话,MongoDB将每个指定的UUID连接起来。

句法:

{ endSessions: [ { id :  }, ... ] } )

db.runCommand({ } ) 方法

上面的方法用于运行endSessions。

db.runCommand( { endSessions: [ { id :  }, ... ] } )

MongoDB killALLSessions命令

命令killAllSession中止指定用户的所有正在运行的会话。它包含一系列文档,其中每个文档都指定用户和用户的身份验证数据库。

句法:

db.runCommand( { killAllSessions: [ { user: , db:  }, ... ]  } )

MongoDB killAllSessionByPattern命令

该命令将终止与参数中任何指定模式匹配的所有正在运行的会话。

当您终止会话时,它将终止会话中正在进行的所有操作并关闭所有打开的游标。

句法:

db.runCommand( { killAllSessionsByPattern: [ , ... ] } )
Pattern Detail
{ lsid: { id : } } It defines the UUID part of the session id to kill.
{ uid: } It defines the hash of the owner of the sessions to be killed.
{ users: [ { user: , db: }, … ] } This defines the owners of the sessions to kill, and requires additional privileges.
{ roles: [ { role: , db: }, … ] } This defines the roles allowed to kill the owners of the sessions.

MongoDB refreshSessions命令

命令ss用于通过扩展会话的活动状态来更新指定会话的最终使用时间。

身份验证的用户凭据用于刷新标识的用户的会话。

句法:

{ refreshSessions: [ { id :  }, ... ] } )

使用db.runCommand({ })方法,此命令用于运行refreshSessions。

db.runCommand( { refreshSessions: [ { id :  }, ... ] } )

MongoDB startSession命令

startSession命令用于启动一系列操作的新逻辑会话。

您必须通过身份验证才能运行该命令,如果部署不执行身份验证或授权,则创建的内容没有所有者,并且可以由任何用户通过任何连接使用。

句法:

{ startSession: 1 }

使用db.runCommand({ })方法,它用于运行startSession。

db.runCommand( { startSession: 1 } )