Ubuntu MongoDB升级关键技巧
升级前必须备份所有重要数据,可使用mongodump命令将数据库导出到指定目录(如/path/to/backup),避免升级失败导致数据丢失。同时,检查新版本与应用程序、操作系统的兼容性(如MongoDB 6.0+对某些旧API的弃用),参考官方升级文档确认兼容性要求。
Ubuntu默认仓库不包含最新MongoDB版本,需手动添加官方源。首先导入MongoDB公钥(确保软件包安全性):
wget -qO - https://www.mongodb.org/static/pgp/server-<version>.asc | sudo apt-key add -(将<version>替换为新版本,如6.0);
然后创建源列表文件(以Ubuntu 22.04为例):
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list(根据Ubuntu版本调整目录名,如20.04用focal);
最后更新APT包列表:sudo apt-get update。
若之前通过apt安装旧版本,建议先卸载以避免冲突:
sudo apt-get purge mongodb-org*(删除所有MongoDB相关包),再用sudo apt-get autoremove清理无用依赖。注意:此操作不会删除数据文件(默认路径为/var/lib/mongodb)。
使用APT安装最新版本(或指定版本):
sudo apt-get install -y mongodb-org;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 systemctl restart mongod;
设置开机自启:sudo systemctl enable mongod;
验证版本:通过mongod --version(命令行)或mongo --eval 'db.version()'(Shell)确认新版本已运行。
若升级前备份了数据,可通过mongorestore命令恢复:
mongorestore /path/to/backup(将备份目录中的数据导入新版本数据库)。注意:恢复前需确保MongoDB服务已停止(sudo systemctl stop mongod),恢复完成后再启动。
/var/log/mongodb/mongod.log),及时排查错误;