CentOS环境下MongoDB升级方法
mongodump命令备份到指定目录:mongodump --out /path/to/backupmongod.conf中的storage.engine、security.authorization)及应用程序驱动的兼容性。sudo systemctl stop mongod。使用yum或dnf卸载当前安装的mongodb-org包(若通过官方仓库安装):
sudo yum remove mongodb-org 或 sudo dnf remove mongodb-org。
根据CentOS版本创建对应的仓库文件(如/etc/yum.repos.d/mongodb-org.repo):
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
注:替换
4.4为目标版本号(如6.0),确保仓库地址与CentOS版本匹配。
更新YUM缓存并安装指定版本的MongoDB:
sudo yum update
sudo yum install -y mongodb-org
安装完成后,包管理器会自动处理依赖关系。
启动MongoDB服务并设置为开机自启:
sudo systemctl start mongod
sudo systemctl enable mongod
通过以下命令验证版本:
mongo --eval 'db.version()'
若输出新版本号,则升级成功。
访问MongoDB官方下载页面,选择适合CentOS的Linux x86_64版本(如mongodb-linux-x86_64-rhel70-6.0.0.tgz),使用wget下载:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-6.0.0.tgz
注:
rhel70表示兼容CentOS 7,rhel80表示兼容CentOS 8,需根据系统版本调整。
解压下载的压缩包并移动到/usr/local/mongodb(或其他目标目录):
tar -zxvf mongodb-linux-x86_64-rhel70-6.0.0.tgz
sudo mv mongodb-linux-x86_64-rhel70-6.0.0 /usr/local/mongodb。
复制旧版本的配置文件(通常位于/etc/mongod.conf)到新版本目录,并修改必要参数(如dbPath、logPath):
sudo cp /etc/mongod.conf /usr/local/mongodb/mongod.conf
编辑配置文件,确保与新版本兼容(如调整storage.engine为wiredTiger,若旧版本未使用)。
使用新版本的二进制文件启动MongoDB,指定配置文件路径:
sudo /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongod.conf
连接MongoDB shell验证版本:
mongo --eval 'db.version()'
若输出新版本号,则升级成功。
sudo rm -rf /usr/bin/mongod /usr/bin/mongo /var/lib/mongo /var/log/mongodb。/usr/local/mongodb),需更新PATH环境变量,使系统能识别新版本的命令:echo 'export PATH=/usr/local/mongodb/bin:$PATH' | sudo tee -a /etc/profile.d/mongodb.shsource /etc/profile.d/mongodb.sh。mongorestore恢复备份的数据:mongorestore /path/to/backup。mongod.conf文档,调整不兼容的参数。