温馨提示×

linux mongodb配置怎样升级版本

小樊
47
2026-10-28 05:19:50
栏目: 云计算

下面按常见 Linux 发行版和使用场景,系统地说明 MongoDB 版本升级的方法与注意事项。


一、升级前准备(非常重要)

1. 查看当前版本

mongod --version
# 或
mongo --version

2. 兼容性检查

  • MongoDB 只能逐版本升级(不能跨大版本跳)
    • 例如:4.4 → 5.0 → 6.0 → 7.0
  • 查看官方升级路径: https://www.mongodb.com/docs/manual/upgrade/

3. 备份数据(必须)

mongodump --out /backup/mongo-$(date +%F)

4. 确认存储引擎

  • 默认是 WiredTiger
  • 老版本若使用 MMAPv1,需先转换

二、使用官方 MongoDB Repository 升级(推荐)

以 Ubuntu / Debian 为例

1. 导入新版本仓库

# 示例:升级到 7.0
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/ubuntu $(lsb_release -cs)/mongodb-org/7.0 multiverse" | \
sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list

2. 更新并升级

sudo apt update
sudo apt install -y mongodb-org

3. 重启服务

sudo systemctl restart mongod

4. 验证

mongod --version

以 CentOS / RHEL 为例

# 示例升级到 7.0
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/9/mongodb-org/7.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://pgp.mongodb.com/server-7.0.asc
EOF

sudo yum makecache
sudo yum install -y mongodb-org
sudo systemctl restart mongod

三、二进制包方式升级(无网环境)

  1. 下载对应版本: https://www.mongodb.com/try/download/community

  2. 停止服务

sudo systemctl stop mongod
  1. 替换二进制
tar -xzf mongodb-linux-x86_64-7.0.0.tgz
cp mongodb-linux-x86_64-7.0.0/bin/* /usr/local/bin/
  1. 启动
sudo systemctl start mongod

四、副本集 / 分片集群升级

原则

  • 逐个节点升级
  • 先升级 Secondary
  • 最后升级 Primary(自动或手动 stepDown)
rs.stepDown()

升级顺序

  1. Secondary nodes
  2. Arbiter(如有)
  3. Primary
  4. Config servers(分片)
  5. Mongos

五、升级后检查

db.adminCommand({ getParameter: 1, featureCompatibilityVersion: 1 })

如需启用新版本特性:

db.adminCommand({ setFeatureCompatibilityVersion: "7.0" })

六、常见问题

1. 启动失败

  • 检查 /var/log/mongodb/mongod.log
  • 常见原因:
    • 数据文件版本不兼容
    • 配置文件参数变更

2. 配置文件变化

  • 新版本可能弃用旧参数
  • 使用:
mongod --config /etc/mongod.conf --validate

七、总结建议

✅ 推荐方式:官方仓库升级
✅ 必须:先备份、逐版本升级
✅ 集群:滚动升级,避免停机

如果你愿意,可以告诉我:

  • Linux 发行版(Ubuntu / CentOS / Rocky 等)
  • 当前 MongoDB 版本
  • 是否副本集 / 单机

我可以给你精确到命令的升级方案。

0 踩