MongoDB2.4.3在Ubuntu13.04的安装

2340阅读 0评论2013-10-21 send_linux
分类:NOSQL

一、需求

MongoDB版本:2.4.3
Ubuntu版本:13.04

二、说明

10gen公司提供了MongoDB的.deb包版本,使得在ubuntu下安装很简单。尽管Ubuntu也提供了MongoDB包,但是其包管理的MongoDB版本有点老,不能安装最新的版本。所以,最新的版本还是要从官网安装。

10gen公司提供了mongodb-10gen包,它包含了最新的MongoDB稳定版,还提供了mongodb-clients包。

三、安装

1. 配置包管理系统
Ubuntu的包管理工具(如dpkg或apt)确保了包的一致性和授权。
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
[sudo] password for chszs: 
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.TpL2Sensb5 --trustdb-name /etc/apt//trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --recv 7F0CEB10
gpg: 下载密钥‘7F0CEB10’,从 hkp 服务器 keyserver.ubuntu.com
gpg: 密钥 7F0CEB10:公钥“Richard Kreuter ”已导入
gpg: 没有找到任何绝对信任的密钥
gpg: 合计被处理的数量:1
gpg:               已导入:1  (RSA: 1)

创建/etc/apt/sources.list.d/10gen.list文件,包含下面的内容:
$ echo 'deb dist 10gen' | sudo tee /etc/apt/sources.list.d/10gen.list
deb dist 10gen

现在用下面的命令更新软件库:
$ sudo apt-get update

接着使用下面的命令安装MongoDB最新的稳定版:
$ sudo apt-get install mongodb-10gen
当命令执行完成后,MongoDB就完成安装了。

四、指定版本的安装

可以使用mongodb-10gen包安装早先版本的MongoDB。要安装指定的版本,可以这样:
$ apt-get install mongodb-10gen=2.2.3

要注意一点,在使用过程中,有可能你在安装其它软件时,apt-get会自动升级你的mongodb-10gen包,要阻止升级,需要用这个命令:
$ echo "mongodb-10gen hold" | dpky --set-selections

五、配置MongoDB

可以通过/etc/mongodb.conf文件来配置MongoDB。控制脚本在/etc/init.d/mongodb。
MongoDB实例会把数据存储在/var/lib/mongodb数据文件,日志记录在/var/log/mongodb日志文件。

六、起停MongoDB

启动MongoDB的命令:
$ sudo service mongodb start
可以通过查看日志文件/var/log/mongodb/mongodb.log来检查mongod是否成功运行。

停止MongoDB的命令:
$ sudo service mongodb stop

重启MongoDB:
$ sudo service mongodb restart

七、mongos的说明

mongos只用于MongoDB的分片部署,而且一般不会运行于mongod运行的同一系统。

八、使用MongoDB

在终端上执行:
$ mongo
MongoDB shell version: 2.4.3
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
    
Questions? Try the support group
    

> db.test.save({a:1})
> db.test.find()
{ "_id" : ObjectId("5190ac7360a98819281b5414"), "a" : 1 }
> 
上一篇:【话题讨论】在JVM之上跳探戈的Jython
下一篇:僧多粥少?还原 OpenStack 的真实“钱景