在 Debian 上部署 MongoDB 副本集(Replica Set)通常包括安装 MongoDB、配置副本集、初始化副本集三个步骤。下面以 3 节点副本集为例(1 主 2 从),适用于 Debian 11 / 12。
sudo apt update
sudo apt install -y curl gnupg
curl -fsSL https://pgp.mongodb.com/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 $(lsb_release -cs)/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
编辑 /etc/mongod.conf
sudo nano /etc/mongod.conf
关键配置示例(每个节点都改):
net:
port: 27017
bindIp: 0.0.0.0 # 生产建议改为具体IP
replication:
replSetName: rs0
storage:
dbPath: /var/lib/mongodb
⚠️ 如果是多机:
bindIp 建议写 本机内网IP重启服务:
sudo systemctl restart mongod
sudo systemctl enable mongod
mongosh
假设三台机器 IP:
rs.initiate({
_id: "rs0",
members: [
{ _id: 0, host: "10.0.0.1:27017" },
{ _id: 1, host: "10.0.0.2:27017" },
{ _id: 2, host: "10.0.0.3:27017" }
]
})
rs.status()
看到:
PRIMARYSECONDARY即为成功 ✅
bindIp 配置错误rs.secondaryOk()
rs.add("10.0.0.4:27017")
rs.remove("10.0.0.2:27017")
security.authorization: enabled)如果你需要:
可以继续告诉我你的使用场景。