- MongoDB官方文档中文版
- MongoDB中文手册说明
- MongoDB简介
- 安装 MongoDB
- The mongo Shell
- MongoDB CRUD 操作
- 聚合
- 数据模型
- 事务
- 索引
- 安全
- 安全检查列表
- 启用访问控制
- 身份验证
- 基于角色的访问控制
- TLS / SSL(传输加密)
- 静态加密
- 客户端字段级加密
- 审计
- 网络和配置强化
- 实现字段级别修订
- 安全参考
- 附录
- 变更流
- 复制
- 分片
- 分片键
- 哈希分片
- 范围分片
- 区
- 管理分片区
- 按位置细分数据
- 用于更改SLA或SLO的分层硬件
- 按应用或客户细分数据
- 仅插入工作负载的分布式本地写入
- 管理分片区
- 使用块进行数据分区
- 在分片集群中拆分数据块
- 管理
- 存储
- 存储引擎
- 日志记录
- 管理日志记录
- GridFS
- FAQ:MongoDB 存储
- 存储引擎
- 参考
- 运算符
- 查询与映射运算符
- 更新运算符
- 聚合管道阶段
- 聚合管道操作符
- $abs (aggregation)
- $acos (aggregation)
- $acosh (aggregation)
- $add (aggregation)
- $addToSet (aggregation)
- $allElementsTrue (aggregation)
- $and (aggregation)
- $anyElementTrue (aggregation)
- $arrayElemAt (aggregation)
- $arrayToObject (aggregation)
- $asin (aggregation)
- $asinh (aggregation)
- $atan (aggregation)
- $atan2 (aggregation)
- $atanh (aggregation)
- $avg (aggregation)
- $ceil (aggregation)
- $cmp (aggregation)
- $concat (aggregation)
- $concatArrays (aggregation)
- $cond (aggregation)
- $convert (aggregation)
- $cos (aggregation)
- $dateFromParts (aggregation)
- $dateToParts (aggregation)
- $dateFromString (aggregation)
- $literal (aggregation)
- 查询修饰符
- 数据库命令
- 聚合命令
- 地理空间命令
- 查询和写操作命令
- 查询计划缓存命令
- 认证命令
- 用户管理命令
- 角色管理命令
- 复制命令
- 分片命令
- 会话命令
- 管理命令
- 诊断命令
- 免费监控命令
- 系统事件审计命令
- mongo Shell 方法
- 集合方法
- db.collection.aggregate()
- db.collection.bulkWrite()
- db.collection.copyTo()
- db.collection.count()
- db.collection.countDocuments()
- db.collection.estimatedDocumentCount()
- db.collection.createIndex()
- db.collection.createIndexes()
- db.collection.dataSize()
- db.collection.deleteOne()
- db.collection.deleteMany()
- db.collection.distinct()
- db.collection.drop()
- db.collection.dropIndex()
- db.collection.dropIndexes()
- db.collection.ensureIndex()
- db.collection.explain()
- db.collection.find()
- db.collection.findAndModify()
- db.collection.findOne()
- db.collection.findOneAndDelete()
- db.collection.findOneAndReplace()
- db.collection.findOneAndUpdate()
- db.collection.getIndexes()
- db.collection.getShardDistribution()
- db.collection.getShardVersion()
- db.collection.insert()
- db.collection.insertOne()
- db.collection.insertMany()
- db.collection.isCapped()
- db.collection.latencyStats()
- db.collection.mapReduce()
- db.collection.reIndex()
- db.collection.remove()
- db.collection.renameCollection()
- db.collection.replaceOne()
- db.collection.save()
- db.collection.stats()
- db.collection.storageSize()
- db.collection.totalIndexSize()
- db.collection.totalSize()
- db.collection.update()
- db.collection.updateOne()
- db.collection.updateMany()
- db.collection.watch()
- db.collection.validate()
- 词汇表
- 默认的MongoDB端口
- 默认的MongoDB读/写关注
- 服务器会话
- MongoDB驱动
- FAQ
- 联系我们
- 更多资料
- [快学Mongo]
- [Mongo问题讨论区]
- [Mongo 驱动使用手册]
- 本书使用 GitBook 发布
配置mongo Shell
配置mongo Shell
在本页面
[success] Note
下面的文档是MongoDB服务器下载.中包含的
mongo
shell。有关新的MongoDB Shell ,mongosh的信息,请参考mongosh文档。要了解这两种shell的区别,请参阅Comparison of the mongo Shell and mongosh.
自定义提示
您可以通过在 mongo
shell中设置变量prompt来修改提示符的内容。prompt变量可以保存字符串和JavaScript代码。如果prompt包含一个返回字符串的函数,mongo
可以在每个提示符中显示动态信息。
您可以在.mongorc.js
文件中添加提示逻辑,以在每次启动mongo
shell时设置提示。
自定义提示以显示操作数
例如,要使用当前会话中发出的操作数创建mongo
shell提示,请在mongo
shell中定义以下变量:
cmdCount = 1;
prompt = function() {
return (cmdCount++) + "> ";
}
提示将展示类似于以下内容:
1>
2>
3>
自定义提示以显示数据库和主机名
要以
的形式创建mongo
shell`提示,请定义以下变量:
host = db.serverStatus().host;
prompt = function() {
return db+"@"+host+"$ ";
}
提示将类似于以下内容:
test@myHost1$
自定义提示以显示时间和文档计数
要创建一个包含系统正常运行时间和当前数据库中文档数的mongo
shell提示,请在mongo
shell中定义以下提示变量:
prompt = function(){
return "Uptime:"+db.serverStatus().uptime+" Documents:"+db.stats().objects+" > "; }
提示符将类似于以下内容:
Uptime:5897 Documents:6 >
在mongo shell中使用外部编辑器
您可以通过在启动mongo
shell之前设置EDITOR
环境变量,这样就可以在 mongo
shell中使用自己的编辑器。
export EDITOR=vim
mongo
进入mongo
shell后,您可以通过输入
edit <variable
>或edit <function
>使用指定的编辑器进行编辑,如以下示例所示:
1.定义一个函数myFunction
:
function myFunction () { }
2.使用编辑器编辑函数:
edit myFunction
该命令将打开vim
编辑会话。 完成编辑后,保存并退出vim
编辑会话。
3.在mongo
shell中,键入myFunction
以查看函数定义:
myFunction
展示的是已经保存编辑后的结果:
function myFunction() {
print("This was edited");
}
[success] Note
当mongo shell解释在外部编辑器中编辑的代码时,它可能会修改函数中的代码,具体取决于JavaScript编译器。 例如,mongo可以将1 + 1转换为2或删除注释。 实际更改仅影响代码的外观,并且会根据所使用的JavaScript版本而有所不同,但不会影响代码的语义。
改变mongo shell(batchSize)
db.collection.find()
方法是用于从集合中检索文档的JavaScript方法。db.collection.find()
方法将游标返回到结果。 但是,在mongo shell中,如果未使用var关键字将返回的游标分配给变量,则该游标会自动迭代最多20次,来打印与查询匹配的前20个文档。 mongo shell将提示 输入it
以使其再次迭代20次。 您可以设置DBQuery.shellBatchSize
属性,以更改文档数默认值20,如以下示例中将其设置为10:
DBQuery.shellBatchSize = 10;
译者:王恒 金江
校对:杨帅
Copyright © 上海锦木信息技术有限公司 all right reserved,由 MongoDB汉化小组 提供技术支持文件修订时间: 2020-10-11 20:53:05