运行命令
要在 mongosh
中运行命令,您必须首先连接到 MongoDB 部署。
格式化输入和输出
mongosh
使用 Node.js BSON 解析器 解析器来解析 BSON 数据。您可以使用解析器的 EJSON 接口以在您使用mongosh
时转换数据。
有关使用 EJSON 的示例,请参阅 EJSON。
切换数据库
要显示正在使用的数据库,请键入 db
:
db
该操作应返回 test
,即默认数据库。
要切换数据库,请发出 use <db>
帮助程序,如以下示例所示:
use <database>
要在不切换当前数据库上下文的情况下访问与当前数据库不同的数据库,请参阅db.getSiblingDB()
方法。
要列出用户可用的数据库,请使用帮助程序 show
dbs
。
创建新的数据库和集合
要创建新数据库,请对要创建的数据库发出use <db>
命令。例如,以下命令使用 操作同时创建数据库myNewDatabase
和 集合myCollection
insertOne()
:
use myNewDatabase db.myCollection.insertOne( { x: 1 } );
如果集合不存在,MongoDB 会在您首次存储该集合的数据时创建该集合。
终止正在运行的命令
要在 mongosh
中终止正在运行的命令或查询,请按 Ctrl + C
。
输入 Ctrl + C
、mongosh
时:
中断正在执行的命令,
尝试终止正在进行的服务器端操作,并
返回命令提示符。
如果 mongosh
无法彻底终止正在运行的进程,则会发出警告。
注意
在 mongosh
中按 Ctrl + C
不会终止异步代码。异步操作(如 setTimeout
)或操作(如 fs.readFile
)将继续运行。
无法在 中终止异步代码。这与mongosh
Node.js REPL 中的行为相同。
按一次 Ctrl + C
不会退出 mongosh
,按两次 Ctrl + C
才会退出 mongosh
。
您也可以从脚本代码中调用 exit(<code>)
命令以终止脚本。有关更多信息,请参阅出错时终止脚本。
命令异常
在命令的输出包含 { ok: 0 }
的情况下,mongosh
会引发异常并且不会返回服务器的原始输出。
注意
在旧版 mongo
Shell 中,当命令的输出包含 {
ok: 0 }
时,命令之间的行为会有所不同。mongosh
通过在这些场景中始终引发异常来提供一致的行为。
清除mongosh
控制台
cls
命令会清除控制台。你还可以使用 Ctrl + L
和 console.clear()
清除控制台。