博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(翻译) MongoDB(19) mongo Shell
阅读量:6208 次
发布时间:2019-06-21

本文共 2261 字,大约阅读时间需要 7 分钟。

概述

shell 是 MongoDB的交互式 JavaScript 接口. 你可以使用 shell 查询和更新数据以及执行管理操作.

shell 是 的一个组件. 一旦你已经. 连接 shell 到你运行的 MongoDB 实例. 在 的大部分示例都是使用 shell; 然而, 许多为 MongoDB 提供了类似的接口.

启动 mongo Shell

重要:

在尝试运行 shell 之前, 确保 MongoDB 正在运行.

启动 shell, 并使用默认端口(port)连接到本地(localhost)正在运行 实例.

  1. 在终端窗口的提示下(或者 Windows 的命令符), 转到你的<mongodb installation dir>:

    cd 
  2. 输入 ./bin/mongo 来启动 :

    ./bin/mongo

    如果你已经将 <mongodb installation dir>/bin 添加到 PATH 环境变量, 你只需要输入 mongo 而不是 ./bin/mongo.

选项

当你不带任何参数运行 , shell 将会尝试连接在本地运行的端口为27017的 MongoDB 实例. 指定不同的主机或者端口号, 以及其它选项, 请参阅 和 , 其中提供了可用选项的详细信息.

.mongorc.js 文件

当启动时, 会检查用户的目录是否存在一个名为 的 JavaScript 文件. 如果找到, 会在第一次显式提示之前解析 .mongorc.js 的内容. 如果你想使用 shell 来解析一个 JavaScript 文件或者表达式, 不如在命令行使用 --eval 选项或者, 将会在 JavaScript 完成处理之后读取 .mongorc.js 文件. 你可以使用 选项来防止加载 .mongorc.js.

使用 mongo Shell

要显示你正在使用的数据库, 输入 db:

db

操作应该返回 test, 这是默认的数据库. 要切换数据库, 执行 use <db>, 如以下示例:

use 

列出可用的数据库, 使用 show dbs. 请参阅 方法从当前的数据库访问一个不同的数据, 而不切换你的当前数据库的上下文(即 db).

你也可以切换到不存在的数据库. 当你数据库第一次存储数据时, 例如通过创建集合, MongoDB 会创建数据库. 例如, 下面在 操作期间, 会创建 myNewDatabase 数据库和 myCollection .

use myNewDatabasedb.myCollection.insert( { x: 1 } );

是 之一.

  • db 引用当前的数据库.

  • myCollection 是集合的名字.

如果 mongo shell 不接受集合的名称. 例如, 如果名称包含空格, 连字符或者数字开头, 你可以使用另外一个语法去创建集合, 比如这样:

db["3test"].find()db.getCollection("3test").find()

有关 shell 中的基础 MongoDB 操作的更多文档, 请参阅:

格式化输出结果

返回一个给结果; 然而, 在 shell 中, 如果返回的游标没有分配给使用 var 关键字定义的变量. 然后游标会自动迭代20次, 以便输出匹配查询的前20个文档. shell 会提示 Type it 再迭代20次.

格式化输出结果, 你可以添加 .pretty() 到操作上, 就像下面这样:

db.myCollection.find().pretty()

此外, 你可以在 shell 使用下列显式打印方法:

  • print() 非格式化打印

  • print(tojson(<obj>)) 格式打印并等效于 printjson()

  • printjson() 格式化输出并等效于 print(tojson(<obj>))

有关在 shell 中使用游标的更多信息和示例, 请参阅. 同样也可以在 shell 中使用获取游标帮助列表.

在 mongo shell 中多行操作

如果你用一个左括号括起来一行 ('('), 一个左大括号 ('{'), 或中括号 ('['), 然后后面的行都会以省略号开头 ("..."), 直到输入响应的右括号 (')'), 右大括号 ('}') 或者右中括号 (']'), 在解析代码之前, shell 会一直等待右括号, 右大括号或者右中括号, 如下所示:

> if ( x > 0 ) {... count++;... print (x);... }

如果你输入两行空行, 你可以退出行连续模式, 如下所示:

> if (x > 0......>

tab 提示和其它键盘快捷键

mongo shell 支持键盘快捷键. 例如:

  • 使用 ↑/↓ 箭头键滚动命令历史记录. 请在 .dbshell 文件参阅 文档获取更多信息.

  • 使用 <Tab> 自动完成或者列出可自动完成的命令列表, 如下所示, 使用 <Tab> 来完成以字母 'c' 开头的方法名称.

    db.myCollection.c

    因为有很多 collection(集合) 方法以字母 "c" 开头, <Tab> 将会列出以 "c" 开头的各种方法.

有关快捷键的完整列表, 请参阅 .

退出 Shell

要退出 shell, 输入 quit() 或者使用Ctrl + C快捷方式.

参见:

下一章:

原文地址:

转载地址:http://aezja.baihongyu.com/

你可能感兴趣的文章
mass Framework class模块 v7
查看>>
C# GDI+ 处理文本的两个小技巧
查看>>
sql 锁
查看>>
【原/转】opencv的级联分类器训练与分类全程记录
查看>>
生死相依:说说JQuery中die()、live()详解[翻译]
查看>>
UML建模工具Visio 、Rational Rose、PowerDesign的比较
查看>>
Leetcode: Next Permutation
查看>>
移动通信调制技术的进展 转
查看>>
压缩映象原理的一个应用
查看>>
Linux 中文乱码问题
查看>>
Asp.Net之自定义表达式构造器(ExpressionBuilder)
查看>>
修改一行SQL代码 性能提升了100倍
查看>>
Windows下Apache+Tomcat+jsp+php的服务器整合配置经验总结
查看>>
我们为什么需要DTO?
查看>>
scp命令
查看>>
编写高质量代码改善C#程序的157个建议[正确操作字符串、使用默认转型方法、却别对待强制转换与as和is]...
查看>>
C++11-新增正则表达式
查看>>
我的第一个 Mono for Android 应用
查看>>
hadoop安装详解
查看>>
Java框架
查看>>