文档菜单
文档首页
/
MongoDB 手册
/

mongosh 方法

本页内容

  • Atlas 搜索索引方法
  • Atlas 流处理方法
  • 集合
  • 游标
  • 数据库
  • 查询计划缓存
  • 批量写入操作
  • 用户管理
  • 角色管理
  • 复制
  • 分片
  • 构造函数
  • 连接
  • 客户端字段级加密

注意

MongoDB 中的 JavaScript

尽管这些方法使用 JavaScript,但大多数与 MongoDB 的交互不使用 JavaScript,而是使用一个idiomatic driver 在交互应用程序的语言中。

注意

有关特定方法的详细信息,包括语法和示例,请单击方法参考页面的链接。

Atlas Search 索引 允许您在 Atlas Search 中查询数据。Atlas Search 索引通过将搜索词映射到包含这些词的文档,实现高效文本搜索查询。

使用以下方法来管理 Atlas Search 索引。

名称
描述
db.collection.createSearchIndex()

在指定的集合上创建Atlas Search 索引

删除现有的Atlas Search 索引.

返回现有Atlas Search 索引的信息

更新现有的Atlas Search 索引.

Atlas Stream Processors 允许您使用与静态数据相同的模型和查询 API,对连续数据流执行聚合操作。

使用以下方法来管理 Stream Processors

重要

以下方法只能在 MongoDB Atlas. 上运行的部署上运行。

名称
描述
创建一个流处理器。
列出当前流处理实例上的所有现有流处理器。
创建一个临时流处理器。
删除现有的流处理器。
从当前运行的流处理器返回一个样本结果数组。
启动现有的流处理器。
返回总结现有流处理器统计信息的函数。
停止当前运行的流处理器。
名称
描述
计算用于评估分片键的度量。
提供访问聚合管道。
提供批量写操作功能。
封装compactStructuredEncryptionData 返回成功或失败对象。
配置集合的查询采样。
封装count 以返回集合或视图中文档数量的计数。
封装 $group 聚合阶段与 $sum 表达式以返回集合或视图中文档数量的计数。
在集合上创建索引。
在集合上创建一个或多个索引。
返回集合的大小。封装size 字段在collStats 的输出中。
删除集合中的一个文档。
删除集合中的多个文档。
返回具有指定字段不同值的文档数组。
从数据库中删除指定的集合。
从集合中删除指定的索引。
从集合中删除所有索引。
已移除。请使用 db.collection.createIndex().
封装count 以返回集合或视图中文档的大致数量。
返回有关各种方法查询执行的信息。
在集合或视图中执行查询,并返回一个游标对象。
原子性地修改并返回单个文档。
执行查询并返回单个文档。
查找单个文档并将其删除。
查找单个文档并将其替换。
查找单个文档并更新它。
返回描述集合上现有索引的文档数组。
对于分片集群中的集合,db.collection.getShardDistribution() 报告 数据块 分配情况。
分片集群的内部诊断方法。
从查询计划器中隐藏索引。
将新文档插入集合。
将多个新文档插入集合。
报告集合是否是 固定集合。
返回集合的延迟统计信息。
执行 map-reduce 风格的数据聚合。
重建集合上所有现有索引。
从集合中删除文档。
更改集合的名称。
替换集合中的单个文档。
报告集合的状态。提供对 collStats 的封装。
报告集合在字节中所使用的总大小。提供对 storageSize 字段的封装。
报告集合上索引使用的总大小。提供对 totalIndexSize 字段的封装。
报告集合的总大小,包括所有文档和集合上所有索引的大小。
从查询计划器中取消隐藏索引。
修改集合中的单个文档。
修改集合中的多个文档。
在集合上建立 Change Stream。
对集合执行诊断操作。
名称
描述
添加特殊的线协议标志,以修改查询的行为。
允许MongoDB在处理阻塞排序操作时,使用磁盘上的临时文件来存储超过100MB系统内存限制的数据。
允许对分片集合执行db.collection.find()操作时,如果查询的一个或多个分片不可用,则返回部分结果而不是错误。
控制MongoDB在一次网络消息中返回给客户端的文档数量。
关闭游标并释放相关服务器资源。
如果游标已关闭,则返回true
指定由db.collection.find()返回的游标的排序规则。
将注释附加到查询中,以便在日志和系统.profile集合中进行可追溯性。
修改游标以返回结果集中的文档数量而不是文档本身。
报告游标的查询执行计划。
将JavaScript函数应用于游标中的每个文档。
如果游标有文档并且可以迭代,则返回true。
强制MongoDB在查询中使用特定的索引。
如果游标已关闭且批中没有剩余对象,则返回true
通过检索和迭代结果集来计算游标中的总文档数。
限制游标结果集的大小。
将函数应用于游标中的每个文档,并将返回值收集到数组中。
指定游标的排他性上限索引边界。用于与cursor.hint()一起使用。
指定对游标上的操作的处理时间累计时间限制(以毫秒为单位)。
指定游标的不包含下限索引边界。用于与cursor.hint()一起使用。
返回游标中的下一个文档。
指示服务器避免在一段时间的不活动后自动关闭游标。
返回当前游标批中剩余的文档数量。
配置游标以以易于阅读的格式显示结果。
指定一个读取关注点,用于find()操作。
指定一个读取优先级,以控制客户端如何将查询定向到副本集
修改游标以返回索引键而不是文档。
为游标返回的每个文档添加内部存储引擎ID字段。
返回应用了skip()limit()方法后的游标中文档的数量。
返回一个游标,该游标仅在跳过指定数量的文档后开始返回结果。
根据排序规范返回结果。
将游标标记为可卷动。仅适用于覆盖集合的游标。
返回一个包含游标返回的所有文档的数组。
名称
描述
admin数据库上运行命令。
运行不要求底层集合的admin/diagnostic管道。
返回数据库命令的帮助信息。
创建一个新集合或视图。通常用于创建覆盖集合。
创建一个视图。
报告当前正在进行的操作。
删除当前数据库。
将写入刷新到磁盘并锁定数据库以防止写入操作并协助备份操作。包装fsync
允许在用db.fsyncLock()锁定的数据库上继续写入。
返回一个集合或视图对象。用于访问在mongosh.中无效的名称的集合。
返回当前数据库中所有集合和视图的集合信息。
列出当前数据库中的所有集合和视图。
返回日志消息详细程度级别。
返回当前连接的Mongo()连接对象。
返回当前数据库的名称。
返回一个文档,该文档反映了当前的配置文件级别和配置文件阈值。
返回一个包含复制统计信息的文档。
提供对指定数据库的访问。
返回一个报告副本集状态的文档。
显示常用 db 对象方法的描述。
返回一个包含系统 MongoDB 运行信息的文档。包装了 hostInfo
终止指定的操作。
显示常用数据库命令的列表。
已弃用。结束一个已验证的会话。
打印每个集合的统计信息。包装了 db.collection.stats().
从主节点的角度打印副本集状态的报告。
从从节点的角度打印副本集的状态。
打印分片配置和数据分块范围的报告。
MongoDB 5.0 中已移除。重置最后错误状态。
执行在线 TLS 证书轮换。包装了 rotateCertificates.
运行数据库命令。
返回一个显示 mongod 实例编译参数的文档。包装了 buildInfo.
返回一个包含用于启动 MongoDB 实例的运行时信息的文档。包装了 getCmdLineOpts.
返回一个提供数据库进程状态的概述文档。
设置单个日志消息的详细程度级别。
修改数据库分析当前级别。
干净且安全地关闭当前 mongodmongos 进程。
返回报告当前数据库状态的文档。
返回 mongod 实例的版本。
为数据库打开一个 变更流游标,报告其所有非 system 集合。不能在 adminlocalconfig 数据库上打开。
名称
描述
返回一个接口,用于访问集合的查询计划缓存对象及其相关PlanCache方法。
清除集合中所有缓存的查询计划。通过特定集合的缓存对象访问,即 db.collection.getPlanCache().clear()
清除指定查询形状的缓存的查询计划。通过特定集合的缓存对象访问,即 db.collection.getPlanCache().clearPlansByQuery()
显示可用于集合查询计划缓存的可用方法。通过特定集合的缓存对象访问,即 db.collection.getPlanCache().help()
返回集合的缓存计划信息。通过特定集合的缓存对象访问,即 db.collection.getPlanCache().list()
名称
描述
初始化一个Bulk()操作构建器,用于有序操作列表。
初始化一个Bulk()操作构建器,用于无序操作列表。
Bulk操作构建器。
执行一批操作。
指定更新或删除操作的查询条件。
指定用于updateupdateOne操作的过滤器,以确定要更新的数组元素。
指定查询条件的排序规则
将多个文档删除操作添加到操作列表中。
将单个文档删除操作添加到操作列表中。
指定用于更新/替换操作的索引。
Bulk.find.delete()的别名。
Bulk.find.deleteOne()的别名。
将单个文档替换操作添加到操作列表中。
将单个文档更新操作添加到操作列表中。
multi更新操作添加到操作列表中。
为更新操作指定upsert: true
返回一个数组,包含在Bulk()操作对象中执行的写操作。
将插入操作添加到操作列表中。
返回一个JSON文档,其中包含Bulk()操作对象中的操作数和批次数。
Bulk.toJSON()的结果作为字符串返回。
名称
描述
对数据库进行用户身份验证。
更改现有用户的密码。
创建新用户。
删除单个用户。
删除与数据库关联的所有用户。
返回有关指定用户的信息。
返回有关数据库关联的所有用户的信息。
将角色及其权限授予用户。
已弃用。从数据库中删除用户。
从用户中删除角色。
更新用户数据。
提示输入密码,作为在mongosh的各种用户身份验证/管理方法中直接指定密码的替代方案。
名称
描述
创建一个角色并指定其权限。
删除一个用户定义的角色。
删除与数据库关联的所有用户定义的角色。
返回指定角色的信息。
返回数据库中所有用户定义角色的信息。
将权限分配给用户定义的角色。
从用户定义的角色中移除指定的权限。
指定从哪些角色继承权限的用户定义角色。
从角色中移除继承的角色。
更新用户定义的角色。
名称
描述
将成员添加到副本集。
将仲裁者添加到副本集。
返回副本集配置文档。
在一段时间内防止当前成员寻求成为主节点的选举。
返回副本集函数的基本帮助文本。
初始化一个新的副本集。
从主节点角度打印副本集状态的格式化报告。
从辅助节点角度打印副本集状态的格式化报告。
通过应用新的副本集配置对象来重新配置副本集。
从副本集中移除成员。
返回一个包含副本集状态的文档。
使当前主节点成为辅助节点,这强制进行选举。
设置此副本集成员将从其同步的成员,覆盖默认同步目标选择逻辑。
名称
描述
返回输入的哈希值。

中止分片操作。

版本5.0.

停止正在进行的 unshardCollection 操作。

版本8.0.

向分片集群添加一个 分片
此方法是对 sh.addShardToZone() 的别名。
将分片与区域关联。支持在分片集群中配置 区域
此方法是对 sh.updateZoneKeyRange() 的别名。
返回有关分片集合的块是否平衡的信息。

强制分片操作阻塞写入并完成。

版本5.0.

在分片数据库的单个集合上禁用平衡。不影响分片集群中其他集合的平衡。
如果之前已使用 sh.disableBalancing() 禁用,则激活分片集合平衡器进程。

禁用 命名空间 的自动 数据块 合并。

版本7.0.

禁用分片集群的自动拆分。

从 MongoDB 6.0.3 开始,不再执行自动数据块拆分。这是由于平衡策略的改进。自动拆分命令仍然存在,但不会执行任何操作。

启用 命名空间 的自动 数据块 合并。

版本7.0.

启用分片集群的自动拆分。

从 MongoDB 6.0.3 开始,不再执行自动数据块拆分。这是由于平衡策略的改进。自动拆分命令仍然存在,但不会执行任何操作。

创建数据库。
返回一个布尔值,报告平衡器是否当前已启用。

返回分片集合的数据分布信息。 sh.getShardedDataDistribution()$shardedDataDistribution 聚合管道阶段的 shell 辅助方法。

此方法是对 sh.removeRangeFromZone() 的别名。
删除分片键范围与区域之间的关联。支持在分片集群中配置 区域
返回 sh 方法的帮助文本。
返回描述平衡器状态的文档。
数据块 中迁移一个 分片集群
此方法是 sh.removeShardFromZone() 的别名。
删除分片与区域之间的关联。用于管理 区域分片

启动一个 重新分片操作,以更改集合的分片键,改变数据的分布。

版本5.0.

启用或禁用 平衡器,该平衡器在分片之间迁移 数据块
启用集合的分片。
使用特定的 分片键 值作为分隔点,将现有的 数据块 分割成两个数据块。
将包含匹配查询的文档的现有 数据块 分割成两个大小大致相等的数据块。

启用 自动合并器

版本7.0.

启用平衡器并等待平衡开始。
报告分片集群的状态,如 db.printShardingStatus()

禁用 自动合并器

版本7.0.

禁用平衡器并等待任何正在进行的平衡轮次完成。

取消分片现有的分片集合并将集合数据移动到单个分片上。取消分片集合时,集合不能跨多个 分片 分割,并且 分片键 将被删除。

版本8.0.

将一系列分片键关联到区域。支持配置分片集群中的 区域
内部。等待平衡器状态改变。
内部。等待平衡器停止运行。
内部。等待分片集群中 mongos 的 ping 状态改变。
名称
描述
从base64值创建一个二进制对象。
从十六进制值创建一个二进制对象。
封装来自Bulk.execute()的结果集。
创建一个日期对象。默认创建一个包含当前日期的日期对象。
返回一个ObjectId。
从base64值创建一个ObjectId。
从十六进制值创建一个ObjectId。
返回ObjectId的时间戳部分。
显示ObjectId的字符串表示形式。
将32字节十六进制字符串转换为UUID BSON子类型。
封装来自写入方法的结果集。
名称
描述
连接到MongoDB实例以及该实例上的指定数据库。
创建一个新的连接对象。
返回一个数据库对象。
返回MongoDB连接的当前读取首选项模式。
返回MongoDB连接的读取首选项标签集。
在连接对象上启用或禁用因果一致性。
为MongoDB连接设置读取首选项
在连接对象上启动会话。
为部署打开一个变更流游标,以报告其所有数据库中的非系统集合,排除内部adminlocalconfig数据库。
会话对象。
会话的选项对象。

注意

客户端字段级加密的mongosh方法需要启用客户端字段级加密的数据库连接。如果当前数据库连接未启用客户端字段级加密,则

名称
描述
返回当前MongoDB连接的密钥库对象。
KeyVault.createKey()的别名。
创建用于客户端字段级加密的数据加密密钥。
从密钥库中删除指定的数据加密密钥。
从密钥库中检索指定的数据加密密钥。
检索密钥库中的所有密钥。
将密钥的别名与指定的数据加密密钥关联。
从指定的数据加密密钥中移除密钥的别名。
检索具有指定密钥别名的密钥。
解密多个数据密钥,并重新加密它们。
返回客户端加密对象,以支持字段的显式加密/解密。
创建具有加密字段的集合。
使用指定的数据加密密钥和加密算法加密字段。
使用相关联的数据加密密钥和加密算法解密字段。

返回

旧版操作码