📅  最后修改于: 2020-11-23 01:09:44             🧑  作者: Mango
该命令将回滚事务中终止多文档事务的操作中所做的任何数据更改。也就是说,该过程在事务中所做的更改尚未保存。
abortTransaction命令必须在会话中运行并针对admin数据库运行。
拒绝事务中的所有数据更改,直到事务结束时才出现。
句法:
{
abortTransaction: 1,
txnNumber: ,
writeConcern: ,
autocommit: false
}
该命令用于保存操作所做的更改。
要运行commitTransaction命令,它必须在会话中运行并针对admin数据库运行。
您可以改用session.commitTransaction()。
在事务开始时,将显示事务中进行的所有数据更改并将其保存在事务之外。
句法:
{
commitTransaction: 1,
txnNumber: ,
writeConcern: ,
autocommit: false
}
该命令用于结束指定的会话。它会覆盖会话在过期之前等待的超时时间。
为了标识要结束的用户会话,MongoDB将每个指定的UUID连接起来。
句法:
{ endSessions: [ { id : }, ... ] } )
db.runCommand({
上面的方法用于运行endSessions。
db.runCommand( { endSessions: [ { id : }, ... ] } )
命令killAllSession中止指定用户的所有正在运行的会话。它包含一系列文档,其中每个文档都指定用户和用户的身份验证数据库。
句法:
db.runCommand( { killAllSessions: [ { user: , db: }, ... ] } )
该命令将终止与参数中任何指定模式匹配的所有正在运行的会话。
当您终止会话时,它将终止会话中正在进行的所有操作并关闭所有打开的游标。
句法:
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: |
This defines the owners of the sessions to kill, and requires additional privileges. |
{ roles: [ { role: |
This defines the roles allowed to kill the owners of the sessions. |
命令ss用于通过扩展会话的活动状态来更新指定会话的最终使用时间。
身份验证的用户凭据用于刷新标识的用户的会话。
句法:
{ refreshSessions: [ { id : }, ... ] } )
使用db.runCommand({
db.runCommand( { refreshSessions: [ { id : }, ... ] } )
startSession命令用于启动一系列操作的新逻辑会话。
您必须通过身份验证才能运行该命令,如果部署不执行身份验证或授权,则创建的内容没有所有者,并且可以由任何用户通过任何连接使用。
句法:
{ startSession: 1 }
使用db.runCommand({
db.runCommand( { startSession: 1 } )