MongoDB在CentOS中的版本升级步骤是什么
导读:MongoDB在CentOS中的版本升级步骤 一 升级前准备 备份数据与环境:对数据做全量备份(如文件系统拷贝或 mongodump),并在维护窗口内操作;先在预发/测试环境演练,确认应用与驱动兼容。升级前确保没有进行中的备份/恢复任务。...
MongoDB在CentOS中的版本升级步骤
一 升级前准备
- 备份数据与环境:对数据做全量备份(如文件系统拷贝或 mongodump),并在维护窗口内操作;先在预发/测试环境演练,确认应用与驱动兼容。升级前确保没有进行中的备份/恢复任务。
- 升级顺序与兼容性:MongoDB 采用逐级升级策略,不能跨多个大版本;例如从4.2 → 4.4 → 5.0。升级前确认驱动、工具与中间件已兼容目标版本。
- 升级前检查 FCV:连接各节点执行 db.adminCommand({ getParameter:1,featureCompatibilityVersion:1} ),确保 featureCompatibilityVersion(FCV) 已处于当前大版本的完全升级状态(如升级到 4.4 前 FCV 应为 4.4;若未完成,直接用更高版本二进制重启可能导致节点崩溃)。
- 客户端与驱动:如启用鉴权,先升级所有 MongoDB 驱动到与目标版本兼容的版本。
- 重要变更提示:从 MongoDB 5.0 起,默认 writeConcern 从 { w:1} 调整为 { w:majority} ,升级后可能出现写入延迟上升,需在低峰期执行并评估影响。
二 使用 YUM 在线升级步骤(推荐)
- 1 备份与停机窗口:完成数据与应用备份,安排在业务低峰期。
- 2 配置官方仓库:编辑 /etc/yum.repos.d/mongodb-org.repo,使用目标版本的仓库(示例为 4.4;如需其他版本,替换版本号):
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc - 3 升级二进制:执行 sudo yum clean all 后,执行 sudo yum update mongodb-org-4.4(或 sudo yum install -y mongodb-org 以安装仓库最新版本)。
- 4 重启服务:sudo systemctl restart mongod。
- 5 验证版本:mongod --version 或 mongo --eval “db.version()”。
- 6 升级 FCV:连接 mongo shell,执行 db.adminCommand({ setFeatureCompatibilityVersion:“4.4”} ),并再次确认 FCV 已为 4.4。
- 7 回滚预案:保留旧版本 rpm 包;若异常,可快速回退至升级前版本并恢复数据。
三 使用 RPM 离线升级步骤(无外网或内网环境)
- 1 备份与停机:同前。
- 2 准备 RPM 包:下载目标版本的 mongodb-org-server、mongodb-org-shell、mongodb-org-tools 等 rpm 包(确保与目标 CentOS/RHEL 版本与架构匹配)。
- 3 校验 FCV:升级前在各节点确认 FCV 处于当前大版本的完全升级状态。
- 4 滚动升级(副本集):逐台执行 rpm -U 升级 mongod,完成一台并确认 mongod 与 FCV 正常后再升级下一台;避免同时重启多台。
- 5 重启与验证:systemctl restart mongod;mongod --version 或 mongo --eval “db.version()”。
- 6 升级 FCV:在所有节点将 FCV 设置为目标版本(如 4.4)。
- 7 异常回退:保留旧包,异常时用 rpm -e 卸载新包并安装旧包,恢复数据后重启。
四 升级后验证与常见问题
- 版本与进程:mongod --version、mongo --eval “db.version()” 与服务状态 systemctl status mongod 均正常。
- FCV 与功能:db.adminCommand({ getParameter:1,featureCompatibilityVersion:1} ) 返回目标版本(如 4.4);如升级到 5.0,评估 writeConcern: majority 带来的写入延迟变化。
- 应用连通性:驱动已升级、连接串可用,业务功能回归通过。
- 常见问题处理:
- 升级后无法启动:检查配置文件与数据目录权限,回滚到旧包并恢复数据。
- FCV 未完全升级导致节点崩溃:先在各节点将 FCV 完全升级到当前大版本,再升级二进制。
- 客户端报错:确认驱动与工具与目标版本兼容并已升级。
五 不同部署形态简要提示
- 单机:按上述步骤直接升级实例与 FCV。
- 副本集:逐台滚动升级 mongod,确保多数节点健康后再继续;升级完成后统一升级 FCV。
- 分片集群:按顺序升级 Config Server → Shards(各分片为副本集,逐台滚动)→ mongos;升级过程中平衡器会被关闭,完成后自动开启。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: MongoDB在CentOS中的版本升级步骤是什么
本文地址: https://pptw.com/jishu/772115.html
