MongoDB 安装与配置
本章将介绍如何在不同平台上安装 MongoDB,包括本地安装和云端 Atlas 服务。
安装方式选择
MongoDB 提供多种安装方式:
| 安装方式 | 适用场景 | 特点 |
|---|---|---|
| MongoDB Atlas(云端) | 学习、快速原型 | 免费额度、零维护 |
| Docker 容器 | 开发环境 | 快速部署、跨平台 |
| 本地安装 | 生产环境 | 完全控制、离线可用 |
方式一:使用 MongoDB Atlas(推荐)
MongoDB Atlas 是官方提供的云数据库服务,提供免费额度,非常适合学习。
注册账号
- 访问 MongoDB Atlas
- 点击 "Start Free" 按钮
- 使用邮箱注册账号
创建免费集群
具体步骤:
- 登录后,点击 "Create" 创建新集群
- 选择 "Free" 套餐(M0)
- 选择云服务商(AWS/Google Cloud/Azure)和区域
- 设置集群名称,点击 "Create Cluster"
配置数据库用户
创建集群后,需要设置数据库访问用户:
- 点击 "Database" -> "Access" -> "Add New Database User"
- 设置用户名和密码(记住这些凭据,后续会用到)
- 选择权限(建议选择 "Read and Write to any database")
配置网络访问
默认情况下,Atlas 禁止所有外部 IP 访问。需要添加允许的 IP:
- 点击 "Network Access" -> "Add IP Address"
- 选择 "Allow Access from Anywhere" (0.0.0.0/0) 用于开发环境
- 点击 "Confirm"
获取连接字符串
- 点击 "Database" -> "Connect"
- 选择 "Drivers"
- 复制连接字符串,格式类似:
mongodb+srv://<username>:<password>@cluster0.mongodb.net/test - 将
<username>和<password>替换为创建的数据库用户名和密码
使用 mongosh 连接
安装 MongoDB Shell 后,可以使用以下命令连接:
# 使用连接字符串
mongosh "mongodb+srv://cluster0.mongodb.net/test" --username your_username
# 连接后输入密码
方式二:Docker 安装
对于开发环境,使用 Docker 可以快速搭建 MongoDB。
安装 Docker
首先确保已安装 Docker Desktop(Windows/Mac)或 Docker Engine(Linux)。
启动 MongoDB 容器
# 拉取最新 MongoDB 镜像
docker pull mongo:latest
# 启动 MongoDB 容器
docker run -d \
--name mongodb \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=admin123 \
mongo
# 查看运行状态
docker ps
参数说明
| 参数 | 说明 |
|---|---|
-d | 后台运行 |
--name | 容器名称 |
-p | 端口映射(主机端口:容器端口) |
-e | 环境变量(设置管理员账号密码) |
使用 Docker Compose
创建 docker-compose.yml 文件:
version: '3.8'
services:
mongodb:
image: mongo:latest
container_name: mongodb
ports:
- "27017:27017"
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin123
volumes:
- mongodb_data:/data/db
volumes:
mongodb_data:
启动服务:
docker-compose up -d
连接本地 MongoDB
# 使用 Docker 时,本地连接
mongosh "mongodb://localhost:27017" --username admin
# 然后输入密码 admin123
方式三:本地安装(Windows)
下载 MongoDB
- 访问 MongoDB Download Center
- 选择:
- Version: 最新稳定版
- Platform: Windows
- Package: MSI
安装步骤
- 运行下载的
.msi文件 - 选择 "Complete" 安装类型
- 取消勾选 "Install MongoDB Compass"(可选)
- 等待安装完成
配置环境变量
- 打开系统属性 -> 高级 -> 环境变量
- 在系统变量中找到 "Path",点击编辑
- 添加 MongoDB 安装路径(默认:
C:\Program Files\MongoDB\Server\<版本>\bin) - 点击确定保存
启动 MongoDB 服务
# 创建数据目录
mkdir C:\data\db
# 启动 MongoDB 服务
mongod
# 或者使用配置文件启动
mongod --config C:\Program Files\MongoDB\Server\<版本>\mongod.cfg
连接 MongoDB
打开新的命令行窗口:
mongosh
方式四:本地安装(Linux)
Ubuntu/Debian
# 导入 MongoDB 公钥
wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo apt-key add -
# 添加 MongoDB 源
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
# 更新包列表
sudo apt update
# 安装 MongoDB
sudo apt-get install -y mongodb-org
# 启动 MongoDB
sudo systemctl start mongod
# 设置开机自启
sudo systemctl enable mongod
CentOS/RHEL
# 创建 yum 仓库文件
cat > /etc/yum.repos.d/mongodb-org-7.0.repo << 'EOF'
[mongodb-org-7.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/7.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-7.0.asc
EOF
# 安装 MongoDB
sudo yum install -y mongodb-org
# 启动 MongoDB
sudo systemctl start mongod
# 设置开机自启
sudo systemctl enable mongod
MongoDB Shell (mongosh) 使用
mongosh 是 MongoDB 的交互式 JavaScript Shell,是学习和测试 MongoDB 的最佳工具。
基本命令
// 查看所有数据库
show dbs
// 切换数据库
use mydb
// 查看当前数据库的集合
show collections
// 查看帮助
help
// 退出
exit
常用操作示例
// 插入文档
db.users.insertOne({ name: "张三", age: 25 })
// 查询文档
db.users.find()
// 更新文档
db.users.updateOne({ name: "张三" }, { $set: { age: 26 } })
// 删除文档
db.users.deleteOne({ name: "张三" })
MongoDB Compass(可视化工具)
MongoDB Compass 是官方提供的图形化工具,适合不熟悉命令行的用户。
功能特点
- 可视化查询构建器
- 实时性能监控
- 索引管理
- 数据导入导出
下载安装
访问 MongoDB Compass 下载页面 下载对应操作系统的版本。
连接 MongoDB
- 打开 Compass
- 输入连接字符串
- 点击 "Connect"
对于本地 MongoDB,使用:mongodb://localhost:27017
验证安装
无论使用哪种安装方式,都可以通过以下方式验证:
// 在 mongosh 中执行
db.adminCommand({ ping: 1 })
返回 { ok: 1 } 表示连接成功。
小结
本章我们学习了:
- MongoDB Atlas 云端部署(推荐学习使用)
- Docker 容器化部署
- Windows 本地安装
- Linux 本地安装
- mongosh 和 Compass 客户端工具
下一步
下一章我们将学习 MongoDB 的核心概念:数据库、集合和文档。