升级前必须备份所有数据库,防止数据丢失。使用mongodump工具备份至指定目录:
mongodump --out /path/to/backup
确认当前MongoDB版本,确保升级路径符合官方要求(如4.4→5.0→6.0):
mongod --version
查阅MongoDB官方发布说明,确认新版本与当前系统、驱动程序及应用代码的兼容性(如是否需要调整索引、配置项)。
若旧版本通过yum/dnf安装,执行以下命令卸载:
sudo yum remove mongodb-org # CentOS 7
sudo dnf remove mongodb-org # CentOS 8/Stream
若旧版本通过tgz包手动安装,删除其安装目录(如/usr/local/mongodb)及关联文件:
sudo rm -rf /usr/local/mongodb /usr/bin/mongod /usr/bin/mongo
访问MongoDB官方下载页面(https://www.mongodb.com/try/download/community),选择适合CentOS的版本(如RHEL 7/8对应CentOS 7/8),使用wget下载:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-6.0.5.tgz # 示例:CentOS 8安装6.0.5版本
解压下载的tgz包,并移动至目标目录(如/usr/local/mongodb):
tar -zxvf mongodb-linux-x86_64-rhel80-6.0.5.tgz
sudo mv mongodb-linux-x86_64-rhel80-6.0.5 /usr/local/mongodb
将MongoDB可执行文件链接至系统路径,方便全局调用:
sudo ln -s /usr/local/mongodb/bin/mongod /usr/bin/mongod
sudo ln -s /usr/local/mongodb/bin/mongo /usr/bin/mongo
将旧版本的mongod.conf(通常位于/etc/mongod.conf)复制至新版本目录,保留原有配置(如dbPath、logPath、bindIp):
sudo cp /etc/mongod.conf /usr/local/mongodb/mongod.conf
根据新版本要求修改配置文件(如启用新功能、调整性能参数),重点检查以下项:
storage.dbPath:数据库存储路径(需与旧版本一致);systemLog.path:日志文件路径(需与旧版本一致);net.bindIp:允许连接的IP地址(如0.0.0.0表示允许远程访问);security.authorization:认证机制(如enabled表示启用权限控制)。使用新版本的mongod命令启动服务(指定配置文件路径):
sudo /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongod.conf
或通过系统服务管理(需提前配置服务文件):
sudo systemctl start mongod
连接MongoDB Shell,检查版本号是否为新版本:
mongo --eval 'db.version()'
输出应显示新版本号(如6.0.5)。
确认新版本运行正常后,删除旧版本的安装目录及残留文件(如/usr/local/old_mongodb),释放磁盘空间。
若升级前备份了数据,可使用mongorestore恢复至新版本数据库:
mongorestore /path/to/backup
升级后密切监控MongoDB的运行状态(如CPU、内存、磁盘IO),确保无异常。