MongoDB聚合:$listLocalSessions

这篇具有很好参考价值的文章主要介绍了MongoDB聚合:$listLocalSessions。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

聚合管道阶段:$listLocalSessions 可以列出 mongod 或 mongos 实例缓存在内存中的会话。

语法

{ $listLocalSessions: <document> }

$listLocalSessionsstage阶段可以接受一个文档,其内容如下:

字段 含义
{ } 如果运行时有访问控制,则返回当前已验证用户的所有会话,否则返回所有会话。
{ users: [ { user: <user>, db: <db> }, ... ] } 返回指定用户的所有会话。如果运行时有访问控制,则用户必须通过身份验证并拥有在群集上执行listSessions操作的权限才能列出其他用户的会话。
{ allUsers: true } 返回所有用户的所有会话。如果运行时有访问控制,则用户需要通过身份验证并拥有在群集上执行listSessions操作的权限。

使用

  • 当用户在mongod或mongos实例上创建会话时,会话的记录最初只存在于实例的内存中;即该记录是实例的本地记录。实例将定期将其缓存的会话同步到config数据库中的system.sessions集合,此时$listSessions和部署的所有成员都可以看到这些会话。在system.sessions集合中存在会话记录之前,只能通过$listLocalSessions操作列出会话。
  • $listLocalSessions操作使用db.agregate()方法,而不是db.collection.aggregate()
  • 只能在管道的第一个阶段使用$listLocalSessions
  • 事务中不允许使用$listLocalSessions

举例

列出所有本地会话

从已连接的 mongod / mongos 实例的会话内存缓存中,列出所有会话(注意权限):

db.aggregate( [  { $listLocalSessions: { allUsers: true } } ] )

列出指定用户所有本地会话

从已连接的 mongod / mongos 实例的内存缓存中,列出用户 myAppReader@test 的所有会话(注意权限):

db.aggregate( [ { $listLocalSessions: { users: [ { user: "myAppReader", db: "test" } ] } } ] )

列出当前用户所有本地会话

从已连接的 mongod / mongos 实例的内存缓存中列出当前用户的所有会话(需要有访问权限):

db.aggregate( [ { $listLocalSessions: { } } ] )

如果不带访问控制运行,该操作会列出所有本地会话。文章来源地址https://www.toymoban.com/news/detail-799967.html

到了这里,关于MongoDB聚合:$listLocalSessions的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MongoDB聚合:$count

    $count 阶段用于统计管道中文档的数量。 string 是文档计数输出字段的名称。 string 必须是非空字符串,不能以 $ 开头,也不能包含 . 字符。 $count 阶段相当于下面 $group + $project 聚合序列: 其中 myCount 是包含计数的输出字段。也可以为输出字段指定其他名称。 \\\"scores\\\"的集合有以

    2024年02月02日
    浏览(35)
  • MongoDB聚合:$bucket

    $bucket 将输入文档按照指定的表达式和边界进行分组,每个分组为一个文档,称为“桶”,每个桶都有一个唯一的 _id ,其值为文件桶的下线。每个桶中至少要包含一个输入文档,也就是没有空桶。 语法 groupBy 对文档进行分组的表达式。若指定字段路径,需要在字段名前加上

    2024年01月23日
    浏览(46)
  • mongodb聚合统计

    2024年02月06日
    浏览(26)
  • MongoDB聚合:$indexStats

    返回有关集合中每个索引使用情况的统计信息。如果运行时有访问控制,请至少以 clusterMonitor 角色的用户身份进行验证。 对于每个索引,返回文件包括以下字段: 字段 含义 name 索引名称 key 索引规格 host mongod 进程的主机名和端口。 accesses 使用索引的统计:ops 是使用索引的

    2024年01月18日
    浏览(37)
  • MongoDB聚合:$project

    $project 聚合阶段可将输入文档根据请求的字段输出到管道的下个阶段,输出的字段可以是输入文档中的字段,也可以是新的计算字段。 $project 聚合接受一个文档参数,可以指定包含的字段,抑制 _id 字段,添加新的字段以及重置已有字段的值等。亦或者,也可以指定排除的字

    2024年02月20日
    浏览(24)
  • MongoDB聚合:$unset

    使用 $unset 阶段可移除文档中的某些字段。从版本4.2开始支持。 移除单个字段,可以直接指定要移除的字段名: 移除多个字段,可以指定一个要移除字段名的数组: u n s e t 和 unset和 u n se t 和 project 对于移除字段, $unset 相当于是 $project 的别名: 内嵌字段 要移除或排除内嵌

    2024年02月19日
    浏览(34)
  • MongoDB聚合:$documents

    $documents 阶段可以根据输入值返回字面意义的文档。 $documents 接受可解析为对象数组的任何有效表达式,包括: 系统变量,如 $$NOW 或 $$SEARCH_META $let 表达式 $lookup 表达式作用域中的变量 没有指向当前文档的表达式(如 $myField 或 $$ROOT )将导致错误。 测试管道阶段 下面例子为

    2024年01月22日
    浏览(44)
  • MongoDB聚合:$densify

    $densify 阶段可以为文档序列中字段缺失的某些值创建新文档。其主要的用途有: 补齐时间序列数据。 为分组数据添加缺失值。 为指定的值范围填充数据。 $densify 阶段的语法: $densify 阶段的参数主要有以下字段: field 必选字段,要填充的字段,字段的值必须是数值或日期类

    2024年02月20日
    浏览(27)
  • MongoDB聚合:$set

    聚合 $set 阶段可以为文档添加新的字段。 $set 输出的文档包含输入文档中的所有现有字段和新添加的字段。 $set 是 $addFields 的别名,从MongoDB4.2开始支持。 $set 和 $addFields 等价于 $project 阶段,这两个阶段都等同于 $project 阶段,后者明确指定输入文档中的所有现有字段并添加新

    2024年01月18日
    浏览(33)
  • MongoDB聚合:$graphLookup

    $graphLookup 聚合阶段在一个集合中执行递归搜索,可以使用选项来控制递归搜索的深度和条件。 $graphLookup 搜索过程总结如下: 输入文档进入 $graphLookup 聚合阶段。 $graphLookup 的搜索目标是 from 参数指定的集合(搜索参数的完整列表见下文)。 对于每个输入文档,搜索都从 st

    2024年02月20日
    浏览(19)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包