在 Debian 上设置 MongoDB,通常推荐使用 官方 MongoDB APT 源,因为 Debian 默认仓库里的版本比较旧。下面按 MongoDB 7.x(当前主流) 给你一套完整流程,适用于 Debian 11 (Bullseye) / Debian 12 (Bookworm)。
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
根据你的 Debian 版本选择:
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
安装完成后,主要目录:
/var/lib/mongodb/var/log/mongodb/etc/mongod.confsudo systemctl start mongod
sudo systemctl enable mongod
检查状态:
sudo systemctl status mongod
看到 active (running) 即成功。
mongosh
或(旧版本):
mongo
看到类似:
test>
说明 MongoDB 正常运行。
编辑配置文件:
sudo nano /etc/mongod.conf
允许远程访问(生产环境慎用):
bindIp: 0.0.0.0
本地访问:
bindIp: 127.0.0.1
mongosh
进入后执行:
use admin
db.createUser({
user: "admin",
pwd: "StrongPassword",
roles: [ { role: "root", db: "admin" } ]
})
修改配置:
security:
authorization: enabled
重启:
sudo systemctl restart mongod
登录:
mongosh -u admin -p --authenticationDatabase admin
sudo ufw allow 27017
⚠️ 不建议直接暴露 27017 到公网。
sudo systemctl stop mongod
sudo apt purge mongodb-org*
sudo rm -r /var/lib/mongodb
sudo rm -r /var/log/mongodb
sudo journalctl -u mongod -xe
常见原因:
如果你告诉我:
我可以给你更精确的配置方案。