这里在UbuntuLinux系统上使用.deb包安装安装MongoDB 2.6.0。虽然Ubuntu包含了自己的MongoDB程序包,但官方的MongoDB包一般都是较新。如果使用一个旧的Ubuntu版本,(即9.10之前任何版本),可以按照MongoDB Debian教程安装。
一、MongoDB包结构:
MongoDB软件仓库包含五程序包:
mongodb-org: 此包是元数据包,它会自动安装下面列出的四个组件包。
mongodb-org-server: 这个包包含mongod守护进程和相关配置和初始化脚本。
mongodb-org-mongos: 这个包包含mongos守护进程。
mongodb-org-shell: 这个包包含mongo shell环境。
mongodb-org-tools: 这个包包含以下MongoDB工具:mongoimport bsondump, mongodump,mongoexport, mongofiles, mongoimport,mongooplog, mongoperf, mongorestore,mongostat, 和 mongotop。
二、MongoDB控制脚本:
mongodb-org包含各种控制脚本,包括初始化脚本:/etc/rc.d/init.d/mongod。使用/etc/mongod.conf文件和控制脚本配置MongoDB。
MongoDB2.6.0版本,不再提供mongos控制脚本。mongos进程只用于分片。可以使用mongod初始化脚本驱动自己的mongos控制脚本。不能将这个包与Ubuntu源提供的mongodb,mongodb-server或mongodb-clients同时安装。
三、安装MongoDB
3.1、使用包管理系统导入公钥:
Ubuntu软件包管理工具(即dpkg和apt)通过要求分销商签订包GPG密钥确保方案的一致性和真实性。使用以下命令来导入MongoDB公共GPG密钥:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
3.2、创建MongoDB清单文件:
使用下面的命令创建清单文件/etc/apt/sources.list.d/mongodb.list:
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
3.3、重新加载本地包数据库:
使用以下命令来重新加载本地包数据库:
sudo apt-get update
3.4、 安装mongoDB程序包:
安装时可以安装MongoDB的最新稳定企业版或者一个指定的MongoDB企业版本。
安装最新的MongoDB稳定的企业版本,使用以下命令:
sudo apt-get install mongodb-org
指定MongoDB企业版本,分别指定每个组件包的包名和版本号,如下例所示,安装MongoDB的2.6.1版本:
apt-get install mongodb-org=2.6.1 mongodb-org-server=2.6.1 mongodb-org-shell=2.6.1 mongodb-org-mongos=2.6.1 mongodb-org-tools=2.6.1
3.5、锁定指定的MongoDB版本:
虽然可以指定任何可用的MongoDB企业版本的,但是当有新版本发布时apt-get将升级到新版本的程序包。为了防止意外升级,要锁定程序包。锁定MongoDB的当前安装版本,使用以下命令:
echo "mongodb-org hold" | sudo dpkg --set-selections echo "mongodb-org-server hold" | sudo dpkg --set-selections echo "mongodb-org-shell hold" | sudo dpkg --set-selections echo "mongodb-org-mongos hold" | sudo dpkg --set-selections echo "mongodb-org-tools hold" | sudo dpkg --set-selections
MongoDB2.4以前版本使用不同的命名约定,请参考对应版本文档。
四、运行MongoDB
MongoDB实例将其数据文件存储在/var/ib/mongo目录,其日志文件在/var/log/mongo目录,并使用当前用户运行mongod。如果你改变用户运行MongoDB进程,,您必须修改/var/lib/mongo和/var/log/mongo目录的访问控制权限。
4.1、启动MongoDB:
可以使用以下命令启动mongod进程:
sudo service mongod start
4.2、验证MongoDB启动成功:
可以通过检查日志文件/var/log/mongodb/mongod.log的内容来验证是否成功启动。也可以使用以下命令来确保MongoDB成功运行:
sudo chkconfig mongod on
4.3、停止MongoDB
在需要时,使用以下命令停止mongod进程:
sudo service mongod stop
4.4、重启MongoDB:
可以通过以下命令重启mongod进程:
sudo service mongod restart
以通过观察输出在/var/log/mongo/mongod.log日志中的错误和重要信息信息判断进程状态。