Debian系统MongoDB的升级步骤是什么
小樊
41
2025-10-19 09:31:07
Debian系统MongoDB升级步骤
1. 升级前准备
- 备份数据:使用
mongodump工具备份所有数据库,避免升级过程中数据丢失。
示例命令:mongodump --out /var/backups/mongodb
- 停止MongoDB服务:通过systemctl停止运行中的MongoDB实例,防止数据损坏。
示例命令:sudo systemctl stop mongod
- 检查兼容性:确认新版本MongoDB与应用程序驱动、操作系统及其他依赖项兼容;若为副本集/分片集群,需确保所有节点状态正常(无全量同步)。
- 检查featureCompatibilityVersion:通过
mongo shell执行db.adminCommand({getParameter:1, featureCompatibilityVersion:1}),确认当前版本与目标版本的兼容性(如升级到6.0需先将featureCompatibilityVersion设置为5.0)。
2. 卸载旧版本MongoDB
- 彻底移除旧版本包及配置文件,避免残留冲突:
示例命令:sudo apt-get purge -y mongodb-org* && sudo apt-get autoremove -y
3. 添加MongoDB官方APT仓库
- 导入MongoDB官方GPG密钥(用于验证软件包完整性):
示例命令(以MongoDB 6.0为例):wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
- 添加对应版本的APT源文件(需根据Debian版本调整,如Debian 11为
bookworm,Debian 10为buster):
示例命令(Debian 11 + MongoDB 6.0):echo "deb [arch=amd64,arm64] https://repo.mongodb.org/apt/ubuntu bookworm/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
- 更新APT包列表:
sudo apt-get update
4. 安装新版本MongoDB
- 通过APT安装最新版本的MongoDB(或指定版本,如
mongodb-org=6.0.0):
示例命令:sudo apt-get install -y mongodb-org
- 若需锁定版本(避免自动升级),可执行:
sudo apt-mark hold mongodb-org
5. 启动服务并验证
- 启动MongoDB服务:
sudo systemctl start mongod
- 设置开机自启:
sudo systemctl enable mongod
- 验证版本:通过
mongo shell或命令行检查版本号,确认升级成功。
示例命令:mongo --eval 'db.version()' 或 mongod --version
6. 升级后操作
- 恢复数据:若升级前备份了数据,可通过
mongorestore恢复:
示例命令:mongorestore /var/backups/mongodb
- 检查集群状态:若为副本集/分片集群,需检查各节点状态(
rs.status())及数据同步情况。
- 监控日志:查看MongoDB日志(
/var/log/mongodb/mongod.log),确认无错误或警告信息。
注意事项
- 滚动升级:对于副本集,需逐个节点升级(先 secondary 再 primary),避免服务中断。
- 版本顺序:必须按版本顺序升级(如3.2→3.4→3.6→4.0→…),不支持跨大版本直接升级。
- 回滚方案:升级前记录旧版本的安装包及配置,若升级失败可通过备份恢复。