Amazon Linux に CouchDB 1.6.1 をインストールした。
また、既存DBからの移行を行った。
参考にさせていただきました
環境
- Amazon Linux AMI 2015.09.1 (HVM), SSD Volume Type - ami-383c1956
- ssh, http, :5984 をオープン
- 何もインストールされていない状態
- CouchDB 1.6.1
インストール
1.各種ライブラリを最新化
sudo yum update
2.epel リポジトリを有効にする
sudo vi /etc/yum.repos.d/epel.repo
[epel] セクションのenable を 1 にする。
3.必要なライブラリをインストール
sudo yum install gcc gcc-c++ libtool libicu-devel openssl-devel autoconf-archive erlang python27 python-sphinx help2man js-devel
参考にした記事に、js-develを追加
4.SpiderMonkey をインストール
wget http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz
tar xvzf js185-1.0.0.tar.gz
cd js-1.8.5/js/src
./configure
sudo make
sudo make install
cd ../../../
5.CouchDBをインストール
wget http://ftp.jaist.ac.jp/pub/apache/couchdb/source/1.6.1/apache-couchdb-1.6.1.tar.gz
tar xvzf apache-couchdb-1.6.1.tar.gz
cd apache-couchdb-1.6.1
./configure --with-erlang=/usr/lib64/erlang/usr/include/
sudo make
sudo make install
cd ..
6.iniファイルの修正
sudo sed -i -e 's/;bind_address = 127\.0\.0\.1/bind_address = 0\.0\.0\.0/g' /usr/local/etc/couchdb/local.ini
sudo sed -i -e "/^\[admins\]$/a admin = xxx" /usr/local/etc/couchdb/local.ini
- 127.0.0.0 に bind されているのを、0.0.0.0 に変更する。(他のIPからアクセス可能にする)
- admin の id, パスを設定
7.User と Permission の設定
sudo adduser --system --home /usr/local/var/lib/couchdb -M --shell /bin/bash --comment "CouchDB" couchdb
sudo chown -R couchdb:couchdb /usr/local/etc/couchdb
sudo chown -R couchdb:couchdb /usr/local/var/lib/couchdb
sudo chown -R couchdb:couchdb /usr/local/var/log/couchdb
sudo chown -R couchdb:couchdb /usr/local/var/run/couchdb
sudo chmod 0770 /usr/local/etc/couchdb
sudo chmod 0770 /usr/local/var/lib/couchdb
sudo chmod 0770 /usr/local/var/log/couchdb
sudo chmod 0770 /usr/local/var/run/couchdb
8.自動起動設定 & 起動
sudo ln -s /usr/local/etc/rc.d/couchdb /etc/init.d/couchdb
sudo chkconfig --add couchdb
sudo /etc/init.d/couchdb start
DBの確認
Futon という Web ベースのユーティリティツールで DB にアクセスできる。
http://xxx.xxx.xxx.xxx:5984/_utils/index.html
起動
自動起動設定している場合
sudo /etc/init.d/couchdb start
自動起動設定していない場合
sudo -i -u couchdb /usr/local/bin/couchdb -b
停止
自動起動設定している場合
sudo /etc/init.d/couchdb stop
自動起動設定していない場合
sudo -i -u couchdb /usr/local/bin/couchdb -d
既存 DB の移行
移行元からのコピー
couchdb を停止し、
/usr/local/var/lib/couchdb/hoge.couch をコピーする
移行先へのコピー
/usr/local/var/lib/couchdb/ に hoge.couch をコピーし、couchdb を起動する。
※owner は couchdb, 権限は 660