MongoDB 是一款 NoSQL 数据库,以其灵活、高效、可扩展等特点,成为越来越多前端开发者和企业的首选。而 MongoDB 自带的命令行工具则是我们进行数据库操作的重要工具之一。本文将为您介绍 MongoDB 自带命令行工具的基本使用教程。
安装 MongoDB
- Mac 平台:可以使用 Homebrew 进行安装,命令为
brew install mongodb - Windows 平台:可以在 MongoDB 官网上下载安装包进行安装
安装完成后,我们就可以通过命令行工具 mongo 连接 MongoDB 数据库了。
连接 MongoDB
连接 MongoDB 数据库时,需要指定服务器地址和端口。默认情况下,MongoDB 连接的是本地的数据库。
# 连接本地 MongoDB 数据库 $ mongo
如果需要连接其他服务器,可以使用以下命令:
# 连接指定的 MongoDB 数据库服务器 $ mongo <IP>:<PORT>
例如,连接 IP 为 192.168.0.100,端口为 27017 的服务器:
$ mongo 192.168.0.100:27017
连接成功后,我们可以通过输入 help 命令查看 MongoDB 支持的命令列表。
创建和删除数据库
在 MongoDB 中,我们可以使用 use 命令来创建数据库。如果数据库不存在,那么 MongoDB 将自动创建它。
# 创建名为 mydb 的数据库 $ use mydb
如果要删除数据库,可以使用 db.dropDatabase() 命令。请注意,这个命令将永久删除数据库,所以请务必谨慎操作。
# 删除当前使用的数据库
> db.dropDatabase()
{ "ok" : 1 }创建和删除集合
集合是 MongoDB 中的一种数据组织方式,类似于关系数据库中的表格。在 MongoDB 中,我们可以使用 db.createCollection() 命令来创建集合。如果集合不存在,那么 MongoDB 将自动创建它。
# 创建名为 mycollection 的集合
> db.createCollection("mycollection")
{ "ok" : 1 }如果要删除集合,可以使用 db.<collection>.drop() 命令。请注意,这个命令将永久删除集合,所以请务必谨慎操作。
# 删除名为 mycollection 的集合
> db.mycollection.drop()
{ "ok" : 1 }插入数据
在 MongoDB 中,我们可以使用 db.<collection>.insert() 命令来向集合中插入数据。
# 向名为 mycollection 的集合中插入一条数据
> db.mycollection.insert({ name: "张三", age: 18 })
WriteResult({ "nInserted" : 1 })可以看到,上述命令执行后,屏幕上输出了 "nInserted" : 1,表示插入了一条数据。如果要一次性插入多条数据,则可以将它们放在一个数组中。
-- -------------------- ---- -------
- --- ------------ ----------
- ------------------------
- ----- ----- ---- -- --
- ----- ----- ---- -- -
--
-----------------
------------- - - --
-------------------- - - --
----------- - --
----------- - --
---------- - --
----------- - --
---------- - --
---------- - - -
--查询数据
在 MongoDB 中,我们可以使用 db.<collection>.find() 命令来查询集合中的数据。
# 查询名为 mycollection 的集合中的所有数据
> db.mycollection.find()
{ "_id" : ObjectId("62cdd08169d936f9e1c63e63"), "name" : "张三", "age" : 18 }
{ "_id" : ObjectId("62cdd09769d936f9e1c63e64"), "name" : "李四", "age" : 20 }
{ "_id" : ObjectId("62cdd09769d936f9e1c63e65"), "name" : "王五", "age" : 22 }可以看到,上述命令执行后,屏幕上输出了集合中的所有数据。如果要查询指定条件的数据,则可以在 find() 命令中传入条件对象。
# 查询名为 mycollection 的集合中 age 大于 20 的所有数据
> db.mycollection.find({ age: { $gt: 20 }})
{ "_id" : ObjectId("62cdd09769d936f9e1c63e65"), "name" : "王五", "age" : 22 }在查询时,我们可以使用一些高级选项。比如,可以使用 limit() 方法限制返回的文档数量,使用 sort() 方法对文档进行排序,使用 skip() 方法跳过指定数量的文档,等等。
更新数据
在 MongoDB 中,我们可以使用 db.<collection>.update() 命令来更新集合中的数据。
# 更新名为 mycollection 的集合中 name 等于 李四 的数据,将 age 改为 25
> db.mycollection.update({ name: "李四" }, { $set: { age: 25 }})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })可以看到,上述命令执行后,屏幕上输出了 "nMatched" : 1, "nUpserted" : 0, "nModified" : 1,表示更新了一条数据。
删除数据
在 MongoDB 中,我们可以使用 db.<collection>.remove() 命令来删除集合中的数据。
# 删除名为 mycollection 的集合中 age 大于 20 的数据
> db.mycollection.remove({ age: { $gt: 20 }})
WriteResult({ "nRemoved" : 1 })可以看到,上述命令执行后,屏幕上输出了 "nRemoved" : 1,表示删除了一条数据。
结语
以上就是 MongoDB 自带命令行工具的基本使用教程了。当然,MongoDB 还有更多高级用法,我们可以参考官方文档进行深入学习。希望本文能够帮助到您!
Source: FunTeaLearn,Please indicate the source for reprints https://funteas.com/post/678265c8935627c90005dd68