必須操作:升級前使用mongodump備份所有數據庫,防止數據丟失。
命令示例:
mongodump --out /path/to/backup # 指定備份目錄(如/home/user/mongo_backup)
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.2.18.tgz
根據系統初始化工具選擇對應命令:
sudo systemctl stop mongod
sudo service mongod stop
默認數據目錄為/var/lib/mongo(可通過mongod.conf中的storage.dbPath確認),備份以防止升級失?。?/p>
sudo mv /var/lib/mongo /var/lib/mongo_old # 移動舊數據目錄到安全位置
tar -zxvf mongodb-linux-x86_64-4.2.18.tgz
/usr/local/mongodb):sudo mv mongodb-linux-x86_64-4.2.18 /usr/local/mongodb
sudo ln -s /usr/local/mongodb/bin/mongod /usr/bin/mongod
sudo ln -s /usr/local/mongodb/bin/mongo /usr/bin/mongo
/etc/mongod.conf(或自定義配置文件)中的關鍵參數:
storage.dbPath指向舊版本數據目錄(如/var/lib/mongo,需與舊版本一致);systemLog.path(如/var/log/mongodb/mongod.log)存在且有寫入權限;net.bindIp(如0.0.0.0,需配合防火墻設置)。storage:
dbPath: /var/lib/mongo # 必須與舊版本一致
systemLog:
path: /var/log/mongodb/mongod.log
logAppend: true
net:
bindIp: 127.0.0.1,0.0.0.0 # 允許本地和遠程訪問
port: 27017
sudo systemctl start mongod
sudo service mongod start
mongo --eval 'db.version()' # 輸出新版本號(如4.2.18)
sudo systemctl status mongod # 應顯示"active (running)"
use admin
db.adminCommand({setFeatureCompatibilityVersion: "4.2"})
db.adminCommand({getParameter: 1, featureCompatibilityVersion: 1})
輸出應包含:{"featureCompatibilityVersion":{"version":"4.2"}}
sudo rm -rf /var/lib/mongo_old
通過以上步驟,可安全完成Linux環境下MongoDB的版本升級。建議升級前詳細閱讀官方文檔,確保符合特定版本的升級要求。