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`进行关联查询。

相关推荐
XueminXu8 小时前
Python读取MongoDB的JSON字典和列表对象转为字符串
python·mongodb·json·pymongo·mongoclient·isinstance·json.dumps
路过羊圈的狼11 小时前
STM32的HAL库驱动ADS124S08进行PT100温度采集
stm32·嵌入式硬件·mongodb
点灯小铭13 小时前
基于51单片机宠物喂食系统设计
单片机·mongodb·毕业设计·51单片机·课程设计·宠物
知本知至1 天前
MongoDB Ops Manager部署
数据库·mongodb
前端小书生2 天前
MongoDB、NestJS 集成 @nestjs/mongoose
mongodb·nestjs
cookqq2 天前
MongoDB源码delete分析观察者getOpObserver()->onDelete
数据库·sql·mongodb·nosql
荷兰小香猪_012 天前
MongoDB数据类型与python操作
数据库·mongodb
木木子99992 天前
MongoDB集合学习笔记
笔记·学习·mongodb
木木子99992 天前
MongoDB文档规范
数据库·mongodb
Python大数据分析2 天前
mongoDB本地windows安装和初始化
mongodb