浅入浅出CouchDB:CouchDB安装


#乱炖


2014-06-03

CouchDB也是NoSQL中的一员,使用Erlang OTP编写,以JSON的格式存储数据,现在是Apache的顶级项目。

安装

如果在windows下安装couchdb,在官网下载exe文件(笔者下载的版本是1.5.1),像平常的软件那样安装就行。安装后,会在Windows系统中添加Apache CouchDB这一服务,以后的开启、关闭都可以使用服务的形式操作。当然,也可以使用安装目录下/bin目录下的工具。

要在Linux下安装1.5.1,可以参考下面的步骤,笔者在Linux Mint 16下安装完成。

安装相关库:

sudo apt-get install -y g++
sudo apt-get install -y erlang-dev erlang-manpages erlang-base-hipe erlang-eunit erlang-nox erlang-xmerl erlang-inets
sudo apt-get install -y libmozjs185-dev libicu-dev libcurl4-gnutls-dev libtool

下面安装的并非必要,但是比较有用:

sudo apt-get install -y erlang-observer erlang-appmon erlang-debugger erlang-et
sudo apt-get install -y erlang-dialyzer erlang-percept erlang-typer erlang-edoc erlang-os-mon erlang-runtime-tools erlang-inviso erlang-tools

下载源码包,解压,进入解压后目录:

./configure && make
sudo make install

配置成可以使用service启动:

sudo rm /etc/logrotate.d/couchdb /etc/init.d/couchdb
sudo ln -s /usr/local/etc/logrotate.d/couchdb /etc/logrotate.d/couchdb
sudo ln -s /usr/local/etc/init.d/couchdb  /etc/init.d
sudo update-rc.d couchdb defaults

这时候还不能正常启动。

添加用户couchdb:

adduser --system \
        --home /usr/local/var/lib/couchdb \
        --no-create-home \
        --shell /bin/bash \
        --group --gecos \
        "CouchDB Administrator" couchdb

这时候,使用service启动,看似启动了,其实并没启动。如果以下面的命令启动CouchDB,

sudo -i -u couchdb couchdb

会出现init terminating in do_boot ()类似的错误。所以,继续进行配置:

修改相关目录的所有者:

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

修改相关目录的权限:

chmod 0770 /usr/local/etc/couchdb
chmod 0770 /usr/local/var/lib/couchdb
chmod 0770 /usr/local/var/log/couchdb
chmod 0770 /usr/local/var/run/couchdb

使用service启动CouchDB,

sudo service couchdb start

打开浏览器,访问http://127.0.0.1:5984/,如果出现下面的类似信息,就成功了:

{"couchdb":"Welcome","uuid":"04a96d7d0348db60b45ccea96cef605b","version":"1.5.1","vendor":{"version":"1.5.1","name":"The Apache Software Foundation"}}

参考资料

Install CouchDB on Ubuntu
Installation on Unix-like systems
Ubuntu下安装Apache CouchDB
couchDB启动报错



( 本文完 )