当前位置: 首页 > 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`进行关联查询。



 

http://www.dtcms.com/a/73322.html

相关文章:

  • 【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逆向】优某愿 字体混淆
  • 提升fcp
  • 八、Prometheus 静态配置(Static Configuration)
  • 仿“东方甄选”直播商城小程序运营平台
  • Git的基本指令
  • 使用爬虫获取自定义API操作API接口
  • 通信协议传输过程中的序列化和反序列化机制
  • 【记】如何理解kotlin中的委托属性?
  • Python的基本知识
  • MySQL学习笔记
  • LSTA: Long Short-Term Attention for Egocentric Action Recognition