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 还有更多高级用法,我们可以参考官方文档进行深入学习。希望本文能够帮助到您!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/678265c8935627c90005dd68