MongoDB官方提供了更方便的Ubuntu下安装方法


我的系统是Ubuntu 12.10

首先添加key:

apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

一上来就出错:

Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.PJ6JkuPTDR --trustdb-name /etc/apt//trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --recv 7F0CEB10
gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: keyserver timed out
gpg: keyserver receive failed: keyserver error

因为keyserver.ubuntu.com服务器用的端口是11371, 在公司网络中受限制。

所以需要通过SSH隧道出去:

ssh -fNL 11371:keyserver.ubuntu.com:11371 root@non-blocked-server -p 443 sudo apt-key adv --keyserver 127.0.0.1 --recv 7F0CEB10

假定公司外面有一台Ubuntu服务器,有公网IP,上面用non-blocked-server表示其IP,安装了SSH服务,并吧端口设置为HTTPS端口:443. 因为公司防火墙允许访问外面的443端口。

上面的命令运行后,就建立了隧道,同时本机监听了11371端口。

然后再添加key:

apt-key adv --keyserver 127.0.0.1 --recv 7F0CEB10

注意此时keyserver.ubuntu.com被替换成了127.0.0.1

现在添加成功:

--primary-keyring /etc/apt/trusted.gpg --keyserver 127.0.0.1 --recv 7F0CEB10
gpg: requesting key 7F0CEB10 from hkp server 127.0.0.1
gpg: key 7F0CEB10: public key "Richard Kreuter <richard@10gen.com>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:              imported: 1  (RSA: 1)

现在创建一个文件:/etc/apt/sources.list.d/10gen.list

里面的内容为:

deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen

现在更新一下:

apt-get update 

下面的命令可以安装MongoDB最新版本

apt-get install mongodb-10gen 

安装完成后,配置文件为:

/etc/mongodb.conf

可以在其中看到数据库文件路径为:/var/lib/mongodb

日志文件路径:/var/log/mongodb/mongdb.log

服务脚本已经安装:

/etc/init.d/mongodb

mongodb已经自动启动,现在可以通过

service mongodb start|stop|restart 来控制了。

官方文档在:http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/

时不时去看一下,以防发生变化。

相关内容