如何在Ubuntu13.04x64VPS上从源代码安装CouchDB

来自菜鸟教程
跳转至:导航、​搜索

介绍

Apache 的 CouchDB 是“一个完全包含 Web 的数据库”。 它是 NoSQL 数据库家族中的一个,它为 MySQL 等关系数据库的刚性结构提供了替代方案。

在撰写本文时,CouchDB 的当前版本是 1.3.1。 要获得这个最新版本,我们需要从源代码安装它(别担心,它并不像听起来那么可怕!)。

准备

首先,我们必须让我们的 VPS 为全新的 CouchDB 安装做好准备。 这意味着安装一些工具和依赖项,使 CouchDB 能够轻松编译和安装。

首先更新 Ubuntu 的包管理器:

$ apt-get update

接下来,安装编译 Couch 所需的工具:

$ apt-get install -y build-essential

现在安装 erlang 和一些相关的依赖项:

$ apt-get install -y erlang-base erlang-dev erlang-nox erlang-eunit

最后,安装几个 CouchDB 需要的库:

$ apt-get install -y libmozjs185-dev libicu-dev libcurl4-gnutls-dev libtool

获取源

满足所有依赖项后,让我们下载源代码副本并准备好它。

导航到我们的源将存在的目录:

$ cd /usr/local/src

抓住源头:

$ curl -O http://apache.mirrors.tds.net/couchdb/source/1.3.1/apache-couchdb-1.3.1.tar.gz

解压文件:

$ tar xvzf apache-couchdb-1.3.1.tar.gz

导航到我们的新目录:

$ cd apache-couchdb-1.3.1.tar.gz

编译安装

剩下的就是编译并安装到我们的新 CouchDB 服务器上。 配置我们的源代码,然后构建并安装它:

$ ./configure
$ make && make install

就是这样! 我们现在安装了一个全新的 CouchDB 服务器并准备运行。 不过,在我们启动它之前,让我们做一些清理和合理的配置。

收尾工作

在 Ubuntu 上,CouchDB 喜欢以用户 couchdb 运行,所以让我们创建它。

$ adduser --disabled-login --disabled-password --no-create-home couched

您会看到一些提示,例如真实姓名和房间号。 您可以将这些留空并按需要按 Enter 或插入值。

现在我们需要给我们的新用户正确的权限来访问 CouchDB 的文件:

$ chown -R couchdb:couchdb /usr/local/var/log/couchdb /usr/local/var/lib/couchdb /usr/local/var/run/couchdb

将 CouchDB 安装为服务并允许它在启动时启动:

$ ln -s /usr/local/etc/init.d/couchdb  /etc/init.d
$ update-rc.d couchdb defaults

最后,启动 CouchDB 并放松一下!

$ service couchdb start

要验证它是否正在运行,请在端口 5984 上连接到它:

$ curl localhost:5984

您应该会看到如下响应:

$ curl localhost:5984 {"couchdb":"Welcome","uuid":"d79a7c37116364fcc76bcb91901f48c6","version":"1.3.1","vendor":{"name":"The Apache Software Foundation","version":"1.3.1"}}

配置

默认情况下,只能从 VPS 本身访问 CouchDB。 这可能是您想要的,但我们假设您不想要。 要允许从 Web 访问,让我们更改配置文件。 首先,为安全保存做好备份:

$ cp /usr/local/etc/couchdb/default.ini /usr/local/etc/couchdb/default.ini.bak

接下来,让我们在编辑器中打开文件:

$ nano /usr/local/etc/couchdb/default.ini

查找名为 bind_address 的设置,并将其更改为 0.0.0.0 - 这将使 CouchDB 绑定到所有可用地址(此时无法指定)。

 [httpd] port = 5984 bind_address = 0.0.0.0

如果您希望 CouchDB 在不同的端口上运行,您现在也可以更改该设置。 完成更改后,保存文件并重新启动沙发。

$ service couchdb restart

现在可以从 Web 访问 CouchDB,包括内置的 Web 界面 Futon。 要访问 Futon,请将浏览器指向 http://your.drop.ip.here:5984/_utils 并准备好放松一下!

注意:如果您想从本地计算机访问您的 CouchDB 服务器,但 ' 不想向世界开放,请在您的 OSX 或 linux 计算机上使用此 ssh 隧道。

$ ssh -L 5984:localhost:5984 your.drop.ip.here

您现在可以在浏览器中通过 http://localhost:5984/_utils 访问您的服务器。