搭建MongoDB环境搭建快速入门指南

搭建MongoDB环境搭建快速入门指南

1. MongoDB是什么?

MongoDB是一款常见的NoSQL数据库,采用的是文档存储模式,相较于传统的关系型数据库,它的扩展性更好,可以应对更大的数据集和更复杂的数据结构。它的应用范围非常广泛,包括互联网应用、大数据、物联网、人工智能等领域,是一个非常值得学习和掌握的技术。

2. 环境搭建前的准备工作

2.1 下载安装包

在进行MongoDB环境搭建之前,我们需要先下载官方的安装包。前往MongoDB官网,选择适合自己操作系统的版本进行下载。

下载完成后,打开安装包,一路默认即可完成安装。安装完成后,我们需要为MongoDB设置数据存储目录。新建一个空文件夹,例如“C:\data\db”,然后在启动MongoDB时指定该目录:

mongod --dbpath C:\data\db

这条命令会启动MongoDB,并且将数据存储在“C:\data\db”文件夹下。

2.2 配置环境变量

为了在任何目录下都可以使用MongoDB的命令行工具,我们需要将MongoDB的安装目录添加到系统的环境变量中。

在Windows系统下,右键点击“此电脑”->“属性”->“高级系统设置”->“环境变量”,在“系统变量”中找到“Path”,点击“编辑”,在结尾添加如下内容:

;C:\Program Files\MongoDB\Server\4.4\bin\;

将“C:\Program Files\MongoDB\Server\4.4\bin\”替换为自己MongoDB安装目录的路径即可。

3. 环境搭建

3.1 启动MongoDB

在命令行中输入以下命令,即可启动MongoDB:

mongod

如果一切正常,命令行中会输出以下信息:

{"t":{"$date":"2021-09-21T11:34:17.494+08:00"},"s":"I", "c":"NETWORK", "id":4915701, "ctx":"initandlisten","msg":"MongoDB starting","attr":{"pid":22156,"port":27017,"dbPath":"C:\\data\\db","architecture":"64-bit","host":"TigerFelix"}}

{"t":{"$date":"2021-09-21T11:34:17.494+08:00"},"s":"I", "c":"CONTROL", "id":20574, "ctx":"initandlisten","msg":"{"attr":{"commit":"1d367f08846cca14d0ea6b357896c50fc92c6bbb"},"t":{"$date":"2021-09-21T11:34:17.494+08:00"},"s":"I", "c":"CONTROL", "id":20574, "ctx":"initandlisten","msg":"MongoDB starting","attr":{"pid":22156,"port":27017,"dbPath":"C:\\data\\db","architecture":"64-bit","host":"TigerFelix"}}

{"t":{"$date":"2021-09-21T11:34:17.494+08:00"},"s":"I", "c":"CONTROL", "id":20576, "ctx":"initandlisten","msg":"targetMinOS: Windows 7/Windows Server 2008 R2"}

{"t":{"$date":"2021-09-21T11:34:17.494+08:00"},"s":"I", "c":"CONTROL", "id":20578, "ctx":"initandlisten","msg":"db version v4.4.9","attr":{"commit":"d2561623fcf951ab0a93c4a3b1c624be027af6af"}}

{"t":{"$date":"2021-09-21T11:34:17.494+08:00"},"s":"I", "c":"CONTROL", "id":20578, "ctx":"initandlisten","msg":"db version v4.4.9","attr":{"commit":"d2561623fcf951ab0a93c4a3b1c624be027af6af"}}

{"t":{"$date":"2021-09-21T11:34:17.494+08:00"},"s":"I", "c":"CONTROL", "id":20578, "ctx":"initandlisten","msg":"git version: d2561623fcf951ab0a93c4a3b1c624be027af6af"}

{"t":{"$date":"2021-09-21T11:34:17.494+08:00"},"s":"I", "c":"CONTROL", "id":20578, "ctx":"initandlisten","msg":"OpenSSL version: OpenSSL 1.1.1k 25 Mar 2021"}

{"t":{"$date":"2021-09-21T11:34:17.495+08:00"},"s":"I", "c":"CONTROL", "id":20578, "ctx":"initandlisten","msg":"modules: none"}

{"t":{"$date":"2021-09-21T11:34:17.495+08:00"},"s":"I", "c":"CONTROL", "id":20578, "ctx":"initandlisten","msg":"allocator: tcmalloc"}

{"t":{"$date":"2021-09-21T11:34:17.495+08:00"},"s":"I", "c":"CONTROL", "id":20578, "ctx":"initandlisten","msg":"options: { net: { bindIp: \"127.0.0.1\", port: 27017 }, security: { authorization: \"disabled\" }, systemLog: { verbosity: 0 }, processManagement: { windowsService: { serviceName: \"MongoDB\", displayName: \"MongoDB\", description: \"MongoDB Server (localhost:27017)\" } } }"}

{"t":{"$date":"2021-09-21T11:34:17.495+08:00"},"s":"I", "c":"STORAGE", "id":20578, "ctx":"initandlisten","msg":"Storage engine is wiredTiger","attr":{"targetMinOS":"Windows 7/Windows Server 2008 R2"}}

{"t":{"$date":"2021-09-21T11:34:17.520+08:00"},"s":"W", "c":"CONTROL", "id":22120, "ctx":"initandlisten","msg":"Access control is not enabled for the database. Read and write access to data and configuration is unrestricted","tags":["startupWarnings"]}

{"t":{"$date":"2021-09-21T11:34:17.523+08:00"},"s":"I", "c":"NETWORK", "id":4648601, "ctx":"listener","msg":"Listening on","attr":{"address":"127.0.0.1","port":27017}}

{"t":{"$date":"2021-09-21T11:34:17.523+08:00"},"s":"I", "c":"NETWORK", "id":4648603, "ctx":"listener","msg":"MongoDB server listening","attr":{"address":"127.0.0.1","port":27017}}

这些信息告诉我们MongoDB已经启动,并且监听在本地的27017端口。

3.2 连接MongoDB

启动MongoDB后,我们可以在另一个命令行窗口中输入以下命令,连接MongoDB:

mongo

如果一切正常,命令行会输出以下信息:

MongoDB shell version v4.4.9

connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb

Implicit session: session { "id" : UUID("4b64aeee-9d20-4f79-8bbc-36cfa058119d") }

MongoDB server version: 4.4.9

---

The server generated these startup warnings when booting:

2021-09-21T11:34:17.520+08:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted

---

MongoDB Enterprise >

这些信息告诉我们MongoDB连接成功,并且当前会话处于MongoDB命令行状态中。

3.3 初步操作MongoDB

在MongoDB的命令行中,我们可以像操作其他数据库一样,进行查询、插入、更新和删除等操作。

以下是一些MongoDB初步操作的示例:

3.3.1 查询

查询一个集合中的所有文档:

show dbs # 列出当前MongoDB实例中的所有数据库

use test # 切换到test数据库

show collections # 列出test数据库中的所有集合

db.users.find() # 查询users集合中的所有文档

3.3.2 插入

向一个集合中插入一条文档:

db.users.insertOne({"name": "张三", "age": 18, "gender": "男"})

这个命令会向users集合中插入{"name": "张三", "age": 18, "gender": "男"}这条文档。

3.3.3 更新

更新一个集合中的一条文档:

db.users.updateOne({"name": "张三"}, {"$set": {"age": 20}})

这个命令会在users集合中查找{"name": "张三"}这条文档,并将其age属性更新为20。

3.3.4 删除

删除一个集合中的一条文档:

db.users.deleteOne({"name": "张三"})

这个命令会在users集合中查找{"name": "张三"}这条文档,并将其删除。

4. 总结

通过本文的介绍,我们可以了解到MongoDB的基本概念和优势,以及如何在Windows环境下进行MongoDB的环境搭建。在实际运用中,我们可以根据需求选择不同的MongoDB版本和配置,以及结合其他工具进行数据的分析和处理。

使用MongoDB时要记得遵守MongoDB的最佳实践,例如设置安全认证、合理设计数据结构和索引等等,以免造成数据泄露或者数据处理效率低下的问题。

数据库标签