MongoDB下载安装

MongoDB

  1. MongoDB是一种基于文档的非关系型(NoSQL)数据库,数据存储在灵活的JSON文档中,便于快速查询和索引。

二、MongoDB下载

  1. **官网下载**:
  1. **其他下载方式**:

三、MongoDB安装

  1. **启动MongoDB服务**:
  • **MongoDB 3.x版本**:安装后需手动启动服务。

```bash

mongod --dbpath 数据库路径

```

  • **MongoDB 4.x版本**:默认安装为系统服务,开机自动启动。

  • Windows环境下,可通过以下命令查看服务状态:

```bash

services.msc

```

找到"MongoDB Server (MongoDB)"服务并启动。

四、MongoDB配置

  1. **配置环境变量**:
  • 将MongoDB的`bin`目录路径(如`C:\Program Files\MongoDB\Server\4.4\bin`)添加到系统环境变量`PATH`中。

  • 配置完成后,重启电脑以生效。

  • 验证安装:

```bash

mongod --version

```

  1. **账户权限配置**:
  • **默认模式**:安装后默认为非授权模式,无需验证即可操作数据库。

  • **创建管理员账户**:

```javascript

mongo 127.0.0.1:27017

use admin

db.createUser({

user: "root",

pwd: "xxxxxx",

roles: ["root"]

})

```

  • **创建普通用户**:

```javascript

mongo 127.0.0.1:27017

db.auth("root", "xxxxxx")

use mydbs

db.createUser({

user: "username",

pwd: "abc666",

roles: [

{ role: "dbOwner", db: "mydbs" }

]

})

```

  1. **修改配置文件**:
  • 配置文件路径:`mongodb安装目录\bin\mongod.cfg`

  • 开启权限验证:

```yaml

security:

authorization: enabled

```

  • 修改后需重启MongoDB服务。

五、MongoDB常用命令

  1. **查看数据库**:

```javascript

show dbs

```

  1. **切换/创建数据库**:

```javascript

use 数据库名

```

  1. **查看当前数据库中的集合**:

```javascript

show collections

```

  1. **查看集合中的数据**:

```javascript

db.集合名.find().pretty()

```

  1. **创建集合**:

```javascript

db.集合名.insert({字段: 值})

```

  1. **删除数据库**:

```javascript

db.dropDatabase()

```

  1. **备份与恢复**:
  • **备份**:

```bash

mongodump -h localhost --port 27017 -u 用户名 -p 密码 -db 数据库名 -o 备份路径

```

  • **恢复**:

```bash

mongorestore -h localhost --port 27017 -u 用户名 -p 密码 --db 数据库名 --authenticationDatabase admin --drop 恢复路径

```

六、MongoDB数据模型设计

  1. **文档模型**:
  • 数据以JSON文档形式存储,支持嵌套和数组。

  • 示例:

```json

{

"name": "张三",

"age": 28,

"hobbies": ["读书", "旅游", "编程"]

}

```

  1. **关系设计**:
  • **内嵌文档**:适合一对一或多对一关系。

  • **引用文档**:适合多对多关系,使用`$lookup`进行关联查询。

相关推荐
disgare10 小时前
MongoDB 底层原理
数据库·mongodb
gihigo19982 天前
基于MSComm控件的PC串口通信程序(中断方式接收数据)
数据库·mongodb
知识分享小能手2 天前
MongoDB入门学习教程,从入门到精通,MongoDB的分片管理(17)
数据库·学习·mongodb
清风6666662 天前
基于单片机的自动存包柜设计
单片机·嵌入式硬件·mongodb·毕业设计·课程设计·期末大作业
爬山算法2 天前
MongoDB(88)如何进行数据迁移?
数据库·mongodb
知识分享小能手2 天前
MongoDB入门学习教程,从入门到精通,MongoDB的选择片键 - 完整知识点(16)
数据库·学习·mongodb
知识分享小能手2 天前
MongoDB入门学习教程,从入门到精通,MongoDB分片配置完全指南(15)
数据库·学习·mongodb
fLDiSQV1W3 天前
【MongoDB】MongoDB 概述
数据库·mongodb
知识分享小能手4 天前
MongoDB入门学习教程,从入门到精通,MongoDB的分片简介(14)
数据库·学习·mongodb
希望永不加班4 天前
SpringBoot 整合 MongoDB
java·spring boot·后端·mongodb·spring