下面我按从零开始的方式,给你说明 Debian 配置 MongoDB 的常见做法。
目前 MongoDB 官方已不再默认提供 Debian 的 apt 仓库(社区版需要手动配置),所以我分别给出 ✅ 推荐方式 和 ⚠️ 备用方式。
适用于 Debian 11 (Bullseye) / Debian 12 (Bookworm)
安装的是 MongoDB Community Edition
sudo apt update
sudo apt install -y curl gnupg
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \
sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg --dearmor
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] \
https://repo.mongodb.org/apt/debian bookworm/mongodb-org/7.0 main" | \
sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] \
https://repo.mongodb.org/apt/debian bullseye/mongodb-org/7.0 main" | \
sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
sudo apt update
sudo apt install -y mongodb-org
安装完成后,你会得到:
mongodmongosh(新命令行工具)sudo systemctl start mongod
sudo systemctl enable mongod
检查状态:
sudo systemctl status mongod
mongosh
看到类似:
test>
说明 MongoDB 已正常工作 ✅
/var/lib/mongodb
/var/log/mongodb
/etc/mongod.conf
编辑配置:
sudo nano /etc/mongod.conf
net:
port: 27017
bindIp: 0.0.0.0
⚠️ 生产环境不建议直接 0.0.0.0,应配合防火墙
security:
authorization: enabled
然后重启:
sudo systemctl restart mongod
进入 mongo:
mongosh
use admin
db.createUser({
user: "admin",
pwd: "StrongPassword",
roles: [ { role: "root", db: "admin" } ]
})
登录:
mongosh -u admin -p --authenticationDatabase admin
sudo ufw allow 27017
⚠️ 建议只开放 指定 IP
docker run -d \
--name mongodb \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \
mongo:7
MongoDB 官方提供 Linux 通用包,但配置复杂,仅用于特殊环境。
查看日志:
sudo journalctl -u mongod
cat /var/log/mongodb/mongod.log
sudo netstat -tulnp | grep 27017
| 场景 | 推荐方案 |
|---|---|
| 开发环境 | 官方 APT 安装 |
| 生产环境 | APT + 认证 + 防火墙 |
| 快速测试 | Docker |
| Debian 无官方包 | Docker |
如果你愿意,我可以:
你可以直接把 Debian 版本 + 报错信息 发我。