在Amazon Linux上将MongoDB升级(从3.0到3.4)
环境
版本
$ cat /etc/system-release
Amazon Linux AMI release 2016.09
步骤 (bù
准备好
版本确认
确认MongoDB的版本。
$ mongo --version
如果想将当前版本从3.0升级到最新版本3.4,由于无法直接进行3.0→3.4的一次性升级,所以需要分成两个步骤进行升级,即先将3.0升级到3.2,再将3.2升级到3.4。
以下是参考:
3.4独立升级
备份数据
为了以防万一,进行备份。
$ mongodump --out mongodump_20170406
停止访问MongoDB的服务
为了预防起见,停止访问相应的MongoDB服务。
升级(从3.0到3.2)
停止mongod。
$ sudo service mongod stop
创建repo文件。
$ sudo vi /etc/yum.repos.d/mongodb-org-3.2.repo
以以下方式进行描述和保存。
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.2/x86_64/
gpgcheck=0
enabled=1
由于 baseurl 根据操作系统而异,因此对于非 Amazon Linux 系统,需要检查以下内容并将其更改为相应的 URL。
https://repo.mongodb.org的内容请提供中文语义化的替换文本。
将旧的 Repo 文件的 enabled 改为 0。
$ sudo vi /etc/yum.repos.d/mongodb-org-3.0.repo
[mongodb-org-3.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.0/x86_64/
gpgcheck=0
enabled=0
确认一下 MongoDB3.2 是否包含在可升级的软件包中。
$ yum check-update
执行更新。
$ sudo yum update
完成更新后,启动mongod。
$ sudo service mongod start
确认版本。
$ mongo --version
MongoDB shell version: 3.2.12
将MongoDB升级至3.2到3.4版本。
停止mongod。
$ sudo service mongod stop
创建repo文件。
$ sudo vi /etc/yum.repos.d/mongodb-org-3.4.repo
以以下方式进行描述和保存。
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.4/x86_64/
gpgcheck=0
enabled=1
将旧Repo文件的enabled值更改为0。
$ sudo vi /etc/yum.repos.d/mongodb-org-3.2.repo
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.2/x86_64/
gpgcheck=0
enabled=0
请确认MongoDB 3.4是否包含在可升级的软件包中。
$ yum check-update
进行更新。
$ sudo yum update
完成更新后,启动mongod。
$ sudo service mongod start
确认版本。
$ mongo --version
MongoDB shell version v3.4.3
git version: f07437fb5a6cca07c10bafa78365456eb1d6d5e1
OpenSSL version: OpenSSL 1.0.0-fips 29 Mar 2010
allocator: tcmalloc
modules: none
build environment:
distmod: amazon
distarch: x86_64
target_arch: x86_64