upgrade CentOS6 default mongodb from 2.4 to 3.6
Vultr CentOS6 default mongodb version is 2.4.14.
Backup database
Assuming you have running database on mongodb. so always backup you database before doing any harzard action.
mongodump
Clone a new server
For safety consideration, it’s better do experienment on cloned new server. please refer to
on Cloning new server, make sure all data are there, and follow instructions below
remove default mongodb
shutdown mongodb server
service mongod stop
remove packges
yum erase $(rpm -qa|grep mongodb)
during this operation, you are expectd to see package mongodb and mongodb-server are removed.
and also remove their related log folders
rm -rf /var/log/mongodb/
rm -rf /var/lib/mongodb/
Download Mongodb 3.6 from mongodb.org
vim /etc/yum.repos.d/mongodb-org-3.6.repo
fill in with repo configuration
[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=0
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
starting to download
sudo yum install -y mongodb-org
restore database
start new mongodb server
service mongod start
remember you have backup database to folder dump/.
due to compatbility between mongodb 2.4 and 3.6, it is recommened to remove roles management data in 2.4
rm -rf dump/admin/
and remove all incompatible data of .json
find dump/ -name "*.json" -exec rm {} \; -print
let’s restore database to 3.6
mongorestore