当前位置: 首页 > news >正文

MongoDB下载安装

### MongoDB

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

#### 二、MongoDB下载

1. **官网下载**:

   - 官网地址:(https://www.mongodb.com/)

   - 下载页面:(https://www.mongodb.com/try/download)

   - **注意**:需要登录账号(可免费注册)后才能下载。

2. **其他下载方式**:

   - Windows 64位:[Try MongoDB Atlas Products](https://www.mongodb.com/)

   - Windows 32位:[Try MongoDB Atlas Products](https://www.mongodb.com/)

   - 全部版本:[Try MongoDB Atlas Products](https://www.mongodb.com/)

#### 三、MongoDB安装

2. **启动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

     ```

2. **账户权限配置**:

   - **默认模式**:安装后默认为非授权模式,无需验证即可操作数据库。

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

     ```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" }

         ]

     })

     ```

3. **修改配置文件**:

   - 配置文件路径:`mongodb安装目录\bin\mongod.cfg`

   - 开启权限验证:

     ```yaml

     security:

       authorization: enabled

     ```

   - 修改后需重启MongoDB服务。

#### 五、MongoDB常用命令

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

   ```javascript

   show dbs

   ```

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

   ```javascript

   use 数据库名

   ```

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

   ```javascript

   show collections

   ```

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

   ```javascript

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

   ```

5. **创建集合**:

   ```javascript

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

   ```

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

   ```javascript

   db.dropDatabase()

   ```

7. **备份与恢复**:

   - **备份**:

     ```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": ["读书", "旅游", "编程"]

     }

     ```

2. **关系设计**:

   - **内嵌文档**:适合一对一或多对一关系。

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



 

相关文章:

  • 【MySQL】(6) 数据库约束
  • 使用unsloth进行grpo强化学习训练
  • html5制作2048游戏开发心得与技术分享
  • 仿最美博客POETIZE(简易版)
  • Android (Kotlin) 高版本 DownloadManager 封装工具类,支持 APK 断点续传与自动安装
  • Python基于深度学习的多模态人脸情绪识别研究与实现
  • DeepSeek使用指南
  • 什么是物理信息神经网络PINN
  • LeetCode hot 100 每日一题(8)——438. 找到字符串中所有字母异位词
  • p5.js:绘制各种内置的几何体,还能旋转
  • 设计模式分类解析与JavaScript实现
  • Linux Redis安装部署、注册服务
  • 蓝桥杯专项复习——stl(stack、queue)
  • hadoop伪分布式搭建--启动过程中如果发现某个datanode出现问题,如何处理?
  • 24.策略模式实现日志
  • leetcode日记(101)填充每个节点的下一个右侧节点指针Ⅱ
  • Deepseek+QuickAPI:打造 MySQL AI 智能体入门篇(一)
  • CVE-2017-5645(使用 docker 搭建)
  • Java面试:集合框架体系
  • 【web逆向】优某愿 字体混淆
  • 一旅客因上错车阻挡车门关闭 ,株洲西高铁站发布通报
  • 舞者王佳俊谈“与AI共舞”:像多了一个舞伴,要考虑它的“感受”
  • 遭车祸罹难的村医遇“身份”难题:镇卫生院否认劳动关系,家属上诉后二审将开庭
  • 李成钢出席中国与《数字经济伙伴关系协定》成员部级会议
  • 玉渊谭天丨卢拉谈美国降低对华关税:中国的行动捍卫了主权
  • 当番茄霸总遇上晋江古言,短剧IP小变局