贝博恩创新科技网

Windows下MongoDB安装配置步骤详解?

目录

  1. 第一部分:安装与配置

    Windows下MongoDB安装配置步骤详解?-图1
    (图片来源网络,侵删)
    • 1 下载 MongoDB
    • 2 安装 MongoDB
    • 3 配置环境变量
    • 4 初始化数据目录
    • 5 配置文件 (mongod.cfg)
    • 6 将 MongoDB 安装为 Windows 服务
    • 7 验证安装
  2. 第二部分:基础操作与命令行界面

    • 1 启动 MongoDB Shell (mongosh)
    • 2 常用 Shell 命令
    • 3 基本数据操作
  3. 第三部分:使用图形化界面工具

    • 1 推荐工具:MongoDB Compass
    • 2 安装与连接
  4. 第四部分:进阶主题

    • 1 安全:启用访问控制
    • 2 备份与恢复
    • 3 卸载 MongoDB
  5. 总结与最佳实践

    Windows下MongoDB安装配置步骤详解?-图2
    (图片来源网络,侵删)

第一部分:安装与配置

本部分将指导你完成 MongoDB 在 Windows 上的完整安装和配置过程。

1 下载 MongoDB

  1. 访问 MongoDB 官方下载页面:https://www.mongodb.com/try/download/community
  2. 选择版本(建议选择最新的稳定版 LTS 版本)。
  3. 平台选择 Windows
  4. 包类型选择 msi (这是标准的 Windows 安装程序,推荐新手使用)。
  5. 处理器架构选择 x64 (如果你的系统是 64 位)。
  6. 点击 Download 按钮,你可能需要免费注册一个 MongoDB 账户才能下载。

2 安装 MongoDB

  1. 找到你下载的 .msi 文件,双击运行。
  2. 欢迎界面,点击 Next
  3. LICENSE AGREEMENT (许可协议):勾选 "I accept the terms in the License Agreement",然后点击 Next
  4. Setup Type (安装类型)
    • Complete (完全安装):推荐选择此选项,它会自动安装所有组件,包括 MongoDB Server, Compass, 和 Tools。
    • Custom (自定义安装):如果你想更改安装路径或选择特定组件,可以选择此选项。
    • 对于新手,选择 Complete 并点击 Next
  5. Service Configuration (服务配置)
    • 勾选 "Install MongoDB as a Windows Service" (作为 Windows 服务安装)。
    • "Service Name":保持默认的 MongoDB
    • "Data Directory":这是存放你数据库数据的地方,默认是 C:\ProgramData\MongoDB\data\db,你可以自定义,但请确保路径存在且你有写入权限。
    • "Log Directory":日志文件存放位置,默认是 C:\ProgramData\MongoDB\data\log
    • "Launch MongoDB Compass":勾选此项,安装完成后会自动打开 MongoDB Compass 这个强大的图形化管理工具。
    • 点击 Next
  6. Install (安装):确认信息无误后,点击 Install
  7. 等待安装完成,点击 Finish

3 配置环境变量

将 MongoDB 的 bin 目录添加到系统环境变量 PATH 中,这样你就可以在任意命令行窗口中直接使用 mongodmongosh 命令。

  1. 在 Windows 搜索栏中搜索“编辑系统环境变量”,并打开它。
  2. 在弹出的“系统属性”窗口中,点击右下角的 “环境变量...” 按钮。
  3. 在“系统变量”(或“用户变量”)部分,找到名为 Path 的变量,选中它,然后点击 “编辑...”
  4. 在“编辑环境变量”窗口中,点击 “新建”
  5. 输入 MongoDB 的 bin 目录路径,默认路径是:
    C:\Program Files\MongoDB\Server\7.0\bin

    注意:请将 0 替换为你实际安装的 MongoDB 版本号。

  6. 依次点击 “确定” 保存所有更改。
  7. 重要:打开一个新的命令行窗口(CMD 或 PowerShell),输入 mongod --versionmongosh --version,如果能看到版本信息,说明配置成功。

4 初始化数据目录

在第 1.2 步中,你已经在服务配置里设置了数据目录,如果你是手动配置或想确认一下,需要确保该目录存在。

Windows下MongoDB安装配置步骤详解?-图3
(图片来源网络,侵删)

以管理员身份打开命令提示符,执行以下命令(请根据你的实际路径修改):

md "C:\ProgramData\MongoDB\data\db"

5 配置文件 (mongod.cfg)

一个更专业和灵活的管理方式是使用配置文件。

  1. 在 MongoDB 的安装目录下(C:\Program Files\MongoDB\Server\7.0\),创建一个名为 mongod.cfg 的文本文件。
  2. 用记事本或代码编辑器打开它,并填入以下内容,这会配置 MongoDB 监听所有网络接口(0.0.0)并指定数据/日志路径。
systemLog:
  destination: file
  path: C:\ProgramData\MongoDB\data\log\mongod.log
  logAppend: true
storage:
  dbPath: C:\ProgramData\MongoDB\data\db
net:
  bindIp: 0.0.0.0
  port: 27017

注意:确保路径与你的实际安装路径一致。

6 将 MongoDB 安装为 Windows 服务

如果你在安装时没有勾选“作为服务安装”,或者需要修改服务配置,可以手动操作。

  1. 以管理员身份打开命令提示符
  2. 执行以下命令来安装服务,这个命令会使用你刚刚创建的 mongod.cfg 文件。
"C:\Program Files\MongoDB\Server\7.0\bin\mongod.exe" --config "C:\Program Files\MongoDB\Server\7.0\mongod.cfg" --install

参数解释

  • --config: 指定配置文件路径。
  • --install: 将 MongoDB 安装为服务。
  1. 启动服务
    net start MongoDB
  2. 停止服务
    net stop MongoDB
  3. 卸载服务
    "C:\Program Files\MongoDB\Server\7.0\bin\mongod.exe" --remove

7 验证安装

  1. 确保MongoDB服务正在运行(net start MongoDB)。

  2. 打开一个新的命令提示符或 PowerShell。

  3. 输入 mongosh 并回车。

  4. 如果成功,你会看到类似下面的欢迎信息和 > 提示符:

    Current Mongosh Version: 1.8.0
    ...
    To help improve our products, anonymous usage data is collected and sent to MongoDB periodically (https://www.mongodb.com/legal/privacy-policy).
    You can opt-out by running the disableTelemetry() command.
    ---         The Node.js driver for MongoDB (v5.7.0) is deprecated since Mongosh v1.8.0 and will be removed in a future release.         ---
    For more information, see: https://www.mongodb.com/docs/drivers/node/current/
    ---
    Test your connection: test.runCommand({ ping: 1 })
    ---
    Set the --shell option to control Mongosh behavior (help for details)
    ---
        To exit, type exit
        For help, type help
    ---
    mongosh>
  5. mongosh> 提示符下,输入 test.runCommand({ ping: 1 }) 并回车,如果返回 { ok: 1 },说明连接成功。


第二部分:基础操作与命令行界面

1 启动 MongoDB Shell (mongosh)

你已经知道了,只需在命令行中输入 mongosh 即可。

2 常用 Shell 命令

命令 描述
show dbsshow databases 列出所有数据库。
use <database_name> 切换到指定数据库,如果数据库不存在,在插入数据时会自动创建。
db 显示当前正在使用的数据库名称。
show collections 列出当前数据库中的所有集合(类似关系数据库中的表)。
help 显示帮助信息。
exitquit() 退出 mongosh

3 基本数据操作

MongoDB 使用 JSON 风格的文档来存储数据。

插入数据

mydb 数据库的 users 集合中插入一个文档。

// 切换到 mydb 数据库
use mydb
// 插入一个文档
db.users.insertOne({
  name: "张三",
  age: 30,
  email: "zhangsan@example.com",
  hobbies: ["reading", "hiking"]
})
// 插入多个文档
db.users.insertMany([
  { name: "李四", age: 25, city: "北京" },
  { name: "王五", age: 28, city: "上海" }
])

查询数据

// 查询 users 集合中的所有文档
db.users.find()
// 以更易读的格式显示结果
db.users.find().pretty() // (在较新版本中,find() 默认格式化,pretty() 可省略)
// 查询 name 为 "张三" 的文档
db.users.find({ name: "张三" })
// 查询 age 大于 26 的文档
db.users.find({ age: { $gt: 26 } })
// 查询 age 在 25 到 28 之间 (包含) 的文档
db.users.find({ age: { $gte: 25, $lte: 28 } })

更新数据

// 更新 name 为 "李四" 的第一个文档,将其 age 设置为 26
db.users.updateOne({ name: "李四" }, { $set: { age: 26 } })
// 更新所有 city 为 "北京" 的文档,添加一个 "isVIP" 字段
db.users.updateMany({ city: "北京" }, { $set: { isVIP: true } })

删除数据

// 删除 name 为 "王五" 的一个文档
db.users.deleteOne({ name: "王五" })
// 删除所有 age 小于 25 的文档
db.users.deleteMany({ age: { $lt: 25 } })
// 删除 users 集合中的所有文档 (慎用!)
// db.users.deleteMany({})
// 删除整个 users 集合 (慎用!)
// db.users.drop()

第三部分:使用图形化界面工具

命令行虽然强大,但图形化界面更直观,适合数据浏览和管理。

1 推荐工具:MongoDB Compass

这是 MongoDB 官方出品的免费 GUI 工具,功能非常强大,与 MongoDB Server 无缝集成。

2 安装与连接

  1. 安装:如果你在安装 MongoDB 时勾选了 "Launch MongoDB Compass",它应该已经自动安装并启动了,如果没有,你可以从 MongoDB Compass 官网 下载并安装。
  2. 连接
    • 打开 Compass。
    • 主界面会提示你连接一个 MongoDB 实例。
    • Host:如果你是在本机安装,默认是 localhost
    • Port:默认是 27017
    • Authentication:如果你没有设置用户名密码,可以留空,直接点击 "CONNECT"
    • 连接成功后,你就可以在图形界面中看到所有数据库、集合,并进行增删改查等所有操作,非常方便。

第四部分:进阶主题

1 安全:启用访问控制

在开发环境中,不启用认证是方便的,但在生产环境中,必须启用认证来保护你的数据。

  1. 创建管理员用户

    • 停止 MongoDB 服务:net stop MongoDB
    • 以无认证模式启动 MongoDB,以便我们创建第一个管理员用户:打开 CMD(管理员),运行
      "C:\Program Files\MongoDB\Server\7.0\bin\mongod.exe" --config "C:\Program Files\MongoDB\Server\7.0\mongod.cfg" --auth

      注意:这里我们手动加上了 --auth 参数,或者,你可以在 mongod.cfg 中添加 security.authorization: enabled,然后重启服务。

    • 打开另一个 mongosh,连接到 admin 数据库:
      use admin
    • 创建一个 root 用户(请替换 your_usernameyour_password):
      db.createUser({
        user: "your_username",
        pwd: "your_password",
        roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
      })
      • userAdminAnyDatabase: 可以管理所有数据库的用户。
      • readWriteAnyDatabase: 可以读写所有数据库的数据。
    • 退出 mongosh
  2. 以认证模式启动服务

    • 关闭刚才手动启动的 mongod 窗口。
    • mongod.cfg 中的 security 部分取消注释或添加:
      security:
        authorization: enabled
    • 重新启动 MongoDB 服务:net start MongoDB
  3. 使用认证连接

    • 所有连接都需要认证。
    • mongosh 中,使用以下命令连接:
      mongosh "mongodb://your_username:your_password@localhost:27017/?authSource=admin"
    • 在 Compass 中,连接时需要填写 UsernamePassword

2 备份与恢复

备份数据 (mongodump)

# 备份所有数据库到 D:\backup\db 文件夹
mongodump --out D:\backup\db
# 备份指定数据库 (mydb)
mongodump --db mydb --out D:\backup\mydb_backup

恢复数据 (mongorestore)

# 从备份文件夹恢复所有数据库
mongorestore --dir D:\backup\db
# 恢复到指定数据库 (如果目标数据库已存在,会追加数据)
mongorestore --db mydb_restored --dir D:\backup\mydb_backup

3 卸载 MongoDB

  1. 停止并移除服务
    net stop MongoDB
    "C:\Program Files\MongoDB\Server\7.0\bin\mongod.exe" --remove
  2. 删除程序:通过 "控制面板" -> "程序和功能" (或 "设置" -> "应用"),卸载 "MongoDB Compass" 和 "MongoDB Community Server"。
  3. 删除数据文件:手动删除之前配置的数据目录和日志目录,C:\ProgramData\MongoDB
  4. 从环境变量中移除:回到“编辑系统环境变量”,从 Path 变量中删除 MongoDB 的 bin 目录路径。

总结与最佳实践

  1. 路径规划:安装时,将数据目录和日志目录放在非系统盘(如 D: 盘),避免占用 C 盘空间。
  2. 服务化:始终将 MongoDB 作为 Windows 服务运行,这样可以确保它在开机后自动启动,无需手动管理。
  3. 使用配置文件mongod.cfg 是管理 MongoDB 配置的最佳方式,比命令行参数更清晰、更易于维护。
  4. GUI 辅助:熟练使用 mongosh 的同时,强烈推荐使用 MongoDB Compass 进行日常的数据浏览和管理,效率会大大提高。
  5. 安全第一:在任何非开发环境中,务必启用访问控制,为数据库设置强密码。
  6. 定期备份:制定并执行定期的数据备份策略,以防数据丢失。

希望这份详细的教程能帮助你在 Windows 上顺利地开始使用 MongoDB!

分享:
扫描分享到社交APP
上一篇
下一篇