前言

MongoDB 是一个流行的 NoSQL 数据库,广泛应用于 Web 开发和大数据处理。本文将详细介绍在 Windows 10 系统上安装 MongoDB 8.0.4 的完整过程,包括安装、配置和设置开机自启动。

系统要求

  • 操作系统: Windows 10 或更高版本
  • 架构: x64 (64位)
  • 内存: 建议 4GB 以上
  • 磁盘空间: 至少 1GB 可用空间

一、安装 MongoDB

1.1 使用 Chocolatey 包管理器安装

首先检查是否已安装 Chocolatey:

choco --version

如果未安装,请先安装 Chocolatey。然后执行以下命令安装 MongoDB:

choco install mongodb -y

1.2 手动安装到指定目录(推荐)

如果希望将 MongoDB 安装到非系统盘(如 D 盘),可以按以下步骤操作:

步骤 1:创建目录结构
# 创建 MongoDB 主目录
New-Item -ItemType Directory -Path "D:\MongoDB" -Force

# 创建数据和日志目录
New-Item -ItemType Directory -Path "D:\MongoDB\data\db" -Force
New-Item -ItemType Directory -Path "D:\MongoDB\log" -Force
步骤 2:下载 MongoDB
# 下载 MongoDB 8.0.4 压缩包
Invoke-RestMethod -Uri "https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-8.0.4.zip" -OutFile "D:\MongoDB\mongodb.zip"
步骤 3:解压安装
# 解压 MongoDB
Add-Type -AssemblyName System.IO.Compression.FileSystem
[System.IO.Compression.ZipFile]::ExtractToDirectory("D:\MongoDB\mongodb.zip", "D:\MongoDB\temp")

# 移动文件到正确位置
Move-Item "D:\MongoDB\temp\mongodb-win32-x86_64-windows-8.0.4\*" "D:\MongoDB\Server\" -Force

# 清理临时文件
Remove-Item "D:\MongoDB\temp" -Recurse -Force
Remove-Item "D:\MongoDB\mongodb.zip" -Force

二、配置环境变量

2.1 临时设置环境变量

$env:PATH += ";D:\MongoDB\Server"

2.2 永久设置环境变量

  1. 右键点击"此电脑" → “属性” → “高级系统设置”
  2. 点击"环境变量"
  3. 在"系统变量"中找到"Path",点击"编辑"
  4. 添加 D:\MongoDB\Server
  5. 点击"确定"保存

三、安装 MongoDB Shell

choco install mongodb-shell -y

四、启动和测试 MongoDB

4.1 启动 MongoDB 服务器

# 启动 MongoDB 服务器
D:\MongoDB\Server\mongod.exe --dbpath "D:\MongoDB\data\db" --logpath "D:\MongoDB\log\mongod.log"

4.2 测试连接

# 测试 MongoDB 连接
mongosh --eval "print('MongoDB 连接测试成功!')"

4.3 查看数据库列表

mongosh --eval "db.adminCommand('listDatabases')"

五、设置开机自启动

5.1 创建启动脚本

# 创建启动脚本
New-Item -Path "D:\MongoDB\start-mongodb.bat" -ItemType File -Force

# 添加脚本内容
Set-Content -Path "D:\MongoDB\start-mongodb.bat" -Value "@echo off"
Add-Content -Path "D:\MongoDB\start-mongodb.bat" -Value "echo 正在启动MongoDB数据库服务..."
Add-Content -Path "D:\MongoDB\start-mongodb.bat" -Value 'cd /d D:\MongoDB\Server'
Add-Content -Path "D:\MongoDB\start-mongodb.bat" -Value 'start /min mongod.exe --dbpath "D:\MongoDB\data\db" --logpath "D:\MongoDB\log\mongod.log"'
Add-Content -Path "D:\MongoDB\start-mongodb.bat" -Value "echo MongoDB已在后台启动"
Add-Content -Path "D:\MongoDB\start-mongodb.bat" -Value "timeout /t 3 >nul"

5.2 通过注册表设置开机自启动

# 添加注册表项
New-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "MongoDB" -Value "D:\MongoDB\start-mongodb.bat" -PropertyType String -Force

5.3 验证自启动设置

# 查看注册表项
Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "MongoDB"

六、设置 MongoDB 密码

6.1 创建管理员用户

// 连接到 MongoDB
mongosh

// 切换到 admin 数据库
use admin

// 创建管理员用户
db.createUser({
  user: "admin",
  pwd: "578957",
  roles: [
    { role: "userAdminAnyDatabase", db: "admin" },
    { role: "readWriteAnyDatabase", db: "admin" },
    { role: "dbAdminAnyDatabase", db: "admin" }
  ]
})

6.2 启用身份验证

创建配置文件 D:\MongoDB\mongod.cfg

# MongoDB配置文件
storage:
  dbPath: D:\MongoDB\data\db
  journal:
    enabled: true

systemLog:
  destination: file
  logAppend: true
  path: D:\MongoDB\log\mongod.log

net:
  port: 27017
  bindIp: 127.0.0.1

security:
  authorization: enabled

6.3 重启 MongoDB 服务

# 停止当前运行的 MongoDB
Get-Process -Name "mongod" | Stop-Process -Force

# 使用配置文件启动
D:\MongoDB\Server\mongod.exe --config "D:\MongoDB\mongod.cfg"

6.4 使用密码连接

# 使用密码连接 MongoDB
mongosh "mongodb://admin:578957@localhost:27017/admin"

七、常用管理命令

7.1 服务管理

# 启动 MongoDB
& "D:\MongoDB\start-mongodb.bat"

# 停止 MongoDB
Get-Process -Name "mongod" | Stop-Process -Force

# 查看 MongoDB 进程
Get-Process -Name "mongod"

7.2 日志查看

# 查看最新日志
Get-Content "D:\MongoDB\log\mongod.log" -Tail 20

# 实时查看日志
Get-Content "D:\MongoDB\log\mongod.log" -Wait

7.3 数据库操作

// 查看所有数据库
show dbs

// 创建/切换数据库
use myDatabase

// 创建集合
db.createCollection("myCollection")

// 插入文档
db.myCollection.insertOne({name: "测试", value: 123})

// 查询文档
db.myCollection.find()

八、故障排除

8.1 常见问题

  1. 端口被占用

    # 查看端口占用
    netstat -ano | findstr :27017
    
    # 杀死占用进程
    taskkill /PID <进程ID> /F
    
  2. 权限问题

    • 确保以管理员身份运行 PowerShell
    • 检查目录权限
  3. 路径问题

    • 确保所有路径使用正确的分隔符
    • 检查路径中是否包含特殊字符

8.2 禁用开机自启动

# 删除注册表项
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "MongoDB"

九、目录结构

安装完成后的目录结构:

D:\MongoDB\
├── Server\                 # MongoDB 服务器文件
│   ├── mongod.exe         # MongoDB 服务器程序
│   ├── mongos.exe         # MongoDB 分片程序
│   └── ...
├── data\                  # 数据目录
│   └── db\               # 数据库文件
├── log\                  # 日志目录
│   └── mongod.log        # MongoDB 日志文件
├── start-mongodb.bat     # 启动脚本
└── mongod.cfg            # 配置文件

十、总结

通过本文的详细步骤,你已经成功在 Windows 10 系统上安装了 MongoDB 8.0.4,并配置了开机自启动功能。主要完成了以下工作:

  1. ✅ 安装 MongoDB 8.0.4 到 D 盘
  2. ✅ 配置环境变量
  3. ✅ 安装 MongoDB Shell
  4. ✅ 设置开机自启动
  5. ✅ 配置数据库密码
  6. ✅ 验证安装和配置

现在你的 MongoDB 数据库已经可以正常使用,并且会在每次开机时自动启动。你可以使用 mongosh 命令连接到数据库,开始进行数据操作。

参考资料


注意: 本文基于 Windows 10 系统编写,其他 Windows 版本可能需要稍作调整。建议在生产环境中使用 MongoDB Atlas 或配置更严格的安全设置。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐