升级前必须备份所有重要数据,防止升级过程中出现意外导致数据丢失。使用mongodump命令备份数据库:
mongodump --out /path/to/backup # 将/path/to/backup替换为实际备份路径 确认当前MongoDB版本,明确升级方向:
mongod --version # 输出示例:db version v4.4.12 若之前通过mongodb-org包安装,建议卸载旧版本以避免依赖冲突:
sudo apt-get purge mongodb-org* # 删除所有MongoDB相关包 sudo rm -rf /var/log/mongodb # 删除旧日志文件 sudo rm -rf /var/lib/mongodb # 删除旧数据目录(**注意:此操作会删除数据,需提前备份**) 确保软件包来源可信,导入MongoDB官方GPG密钥:
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add - # 替换为所需版本的密钥(如6.0、7.0) 根据Ubuntu版本选择对应的MongoDB仓库路径(以Ubuntu 22.04 Jammy为例,升级到MongoDB 6.0):
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list 注:Ubuntu版本与仓库路径对应关系:
- 20.04 LTS(Focal):
focal/mongodb-org/<version>- 22.04 LTS(Jammy):
jammy/mongodb-org/<version>- 23.10(Mantic):
mantic/mongodb-org/<version>
添加仓库后,更新本地包索引:
sudo apt-get update 安装MongoDB官方仓库中的最新稳定版:
sudo apt-get install -y mongodb-org 若需安装特定版本(如6.0.3),需指定所有相关组件的版本号以避免兼容性问题:
sudo apt-get install -y mongodb-org=6.0.3 mongodb-org-server=6.0.3 mongodb-org-shell=6.0.3 mongodb-org-mongos=6.0.3 mongodb-org-tools=6.0.3 防止系统自动升级MongoDB到不兼容的版本,锁定当前安装的版本:
sudo apt-mark hold mongodb-org mongodb-org-server mongodb-org-shell mongodb-org-mongos mongodb-org-tools 应用新版本配置并启动服务:
sudo systemctl restart mongod 确认MongoDB服务已正常运行:
sudo systemctl status mongod # 输出应包含"Active: active (running)" 通过以下命令确认MongoDB已升级到目标版本:
mongod --version # 输出示例:db version v6.0.3 # 或连接shell查看版本 mongo --eval 'db.version()' mongorestore /path/to/backup # 恢复备份的数据