MongoDB2.6升级到MongoDB3.0.2
-
1、升级准备
1.1、停止mongodb老版本
- >use admin
>db.shutdownServer();
1.2、下载和解压新版本mongodb
- >wget https://fastdl.mongodb.org/linux/mongodb-linux-i686-3.0.2.tgz
/* 下载新的版本*/
>gzip -d mongodb-linux-i686-3.0.2.tgz
>tar xvf mongodb-linux-i686-3.0.2.tar
/*解压安装包*/
>mv mongodb-linux-i686-3.0.2 mongodb3.0.2
/*将解压后的文件包移动到mongodb3.0.2的文件夹*/
2、复制拷贝配置文件
2.1、创建两个文件夹
- >mkdir data
>mkdir logs
2.2、把老版本的mongodb配置文件拷贝到新Mongodb目录
- >cp /data/mongodb2.6.4/mongodb.conf /data/mongodb3.0.2/
mongodb.conf内容示例:
bind_ip=127.0.0.1
port=27017
dbpath=/data/mongodb3.0.2/data/
logpath=/data/mongodb3.0.2/logs/mongodb.log
logappend=true
auth=true
fork=true
3、备份
3.1、通过Mongodb3启动Mongodb准备备份
- >/data/mongodb3.0.2/bin/mongod --dbpath /data/mongodb2.6.4/data/
>/data/mongodb3.0.2/bin/mongodump --out /data/mongodb3.0.2/bak/
3.2然后关闭数据库,重新启动,使用WiredTiger引擎
- >/data/mongodb3.0.2/bin/mongod --storageEngine wiredTiger
--dbpath /data/mongodb3.0.2/data/
4、恢复数据
- >/data/mongodb3.0.2/bin/mongorestore /data/mongodb3.0.2/bak/
恢复完成以后,再停止mongodb。修改mongodb.conf
bind_ip=127.0.0.1
port=27017
dbpath=/data/mongodb3.0.2/data/
logpath=/data/mongodb3.0.2/logs/mongodb.log
logappend=true
auth=true
fork=true
storageEngine=wiredTiger
5、启动新版本mongodb
5.1、启动mongodb- >/data/mongodb3.0.2/bin/mongod --config /data/mongodb3.0.2/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 11197
child process started successfully, parent exiting
记得删除先前版本/usr/bin/mongo,把新版本的复制过去
5.2、测试
- 测试了AUTH,一切正常,创建的账户也没丢失。另外数据相比2版本的,确实占用了很少的空间。
[root@localhost mongodb3.0.2]# mongo
MongoDB shell version: 3.0.2
connecting to: test
> use datatest
switched to db datatest
> db.auth('admin','admin')
一切正常,删除以前的目录,跟备份数据的目录。
- >use admin