MongoDB下载安装

发布于:2025-03-21 ⋅ 阅读:(20) ⋅ 点赞:(0)

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