Wir starten eine neue Serie auf CouchDB. Dies ist der erste Artikel in der CouchDB-Reihe.
CouchDB ist ein Apache-Projekt.
Wie der Name schon sagt, handelt es sich um eine Datenbank. CouchDB ist eine NoSQL-Datenbank. NoSQL-Datenbanken haben keine Schemata, Tabellen usw., die Sie normalerweise in traditionellen Datenbanken wie Oracle oder MySQL sehen. Die Daten in CouchDB werden als JSON-Dokument gespeichert, auf das Sie von einem Webbrowser über HTTP zugreifen können.
Dieser Artikel erklärt, wie man CouchDB auf RHEL-basierten Systemen installiert. Zum Beispiel CentOS, Red Hat, Oracle Enterprise Linux usw.
Es gibt zwei Methoden, um CouchDB zu installieren. Sie können es aus dem EPEL-Repository oder aus dem CouchDB-Quellcode installieren.
Methode 1:Von EPEL installieren
Aktivieren Sie zuerst das EPEL-Repository, wie wir es bereits erklärt haben.
Stellen Sie sicher, dass die couchdb für die Yum-Installation verfügbar ist.
# yum info couchdb Name : couchdb Arch : x86_64 Version : 1.0.3 Release : 2.el6 Size : 1.7 M Repo : epel Summary : A document database server, accessible via a RESTful JSON API
Couchdb installieren. Abhängig von Ihrem System werden möglicherweise viele abhängige Pakete installiert. Auf meinem System wurden insgesamt 36 Pakete installiert.
# yum install couchdb
Ändern Sie die local.ini-Datei und fügen Sie eine Zeile für bind_address hinzu und geben Sie die IP-Adresse des Systems an, auf dem couchdb installiert ist.
# vi /etc/couchdb/local.ini [httpd] ;port = 5984 ;bind_address = 127.0.0.1 bind_address = 192.168.101.38
Starten Sie die couchdb-Dienste
# service couchdb start Starting couchdb: [ OK ] # service couchdb status couchdb (pid 29915) is running...
Überprüfen Sie, ob die Couchdb funktioniert, indem Sie zur URL gehen:http://{your-ip-address}:5984 , es sollte eine Webseite mit der folgenden Meldung angezeigt werden.
{“couchdb”:”Willkommen” ,,Version”:,,1.0.3″}
Gehen Sie zu:http://{Ihre-IP-Adresse}:5984/_utils/, von wo aus Sie die couchdb-Datenbank erstellen und verwalten können.
Methode 2:Installation vom CouchDB-Quellcode
Wenn Sie es selbst aus dem Quellcode installieren möchten, sollten Sie zuerst alle Abhängigkeiten erfüllen.
Installieren Sie die folgenden Standardpakete aus dem CentOS-Repository.
# yum info gcc libtool xulrunner-devel libicu-devel openssl-devel
Erlang installieren
Laden Sie hier die neueste Version von Erland herunter. Oder Sie können das wget wie unten gezeigt verwenden, um es direkt herunterzuladen.
cd /usr/src wget http://www.erlang.org/download/otp_src_R15B01.tar.gz tar xvfz otp_src_R15B01.tar.gz
Wir werden Couchdb und alle seine Abhängigkeiten im Verzeichnis /opt/couchdb installieren. Geben Sie also während der Installation von erlang das Präfix als /opt/couchdb/erlang ein, wie unten gezeigt.
cd otp_src_R15B01 ./configure --prefix=/opt/couchdb/erlang --without-termcap --without-javac --enable-smp-support --disable-hipe make make install
Curl installieren
Laden Sie hier die neueste Version von Curl herunter. Oder Sie können das wget wie unten gezeigt verwenden, um es direkt herunterzuladen.
cd /usr/src wget http://curl.haxx.se/download/curl-7.26.0.tar.gz tar xvfz curl-7.25.0.tar.gz
Genau wie Erlang werden wir Curl auch im Verzeichnis /opt/couchdb installieren. Geben Sie also während der Installation von curl das Präfix als /opt/couchdb/curl ein, wie unten gezeigt.
cd curl-7.25.0 ./configure --prefix=/opt/couchdb/curl make make install
SpiderMonkey JS-Engine
Laden Sie hier die neueste Version von SpiderMonkey JS herunter. Oder Sie können das wget wie unten gezeigt verwenden, um es direkt herunterzuladen.
cd /usr/src wget http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz tar xvfz js185-1.0.0.tar.gz
Bitte beachten Sie, dass Sie in das Unterverzeichnis „js/src“ unter js-1.8.5 wechseln müssen, um ./configure auszuführen und wie unten gezeigt die Spidermonkey-js-Engine zu installieren.
cd js-1.8.5/js/src ./configure make make install
Sie sehen die libmozjs185.so.1.0.0 und libmozjs185-1.0.a installiert unter /usr/local/lib
# ls -ltr /usr/local/lib -rwxr-xr-x. 1 root root 3671764 May 30 09:39 libmozjs185.so.1.0.0 -rwxr-xr-x. 1 root root 5523616 May 30 09:39 libmozjs185-1.0.a lrwxrwxrwx. 1 root root 35 May 30 09:40 libmozjs185.so.1.0 -> /usr/local/lib/libmozjs185.so.1.0.0 lrwxrwxrwx. 1 root root 33 May 30 09:40 libmozjs185.so -> /usr/local/lib/libmozjs185.so.1.0
Hinweis:Wenn die Spidermonkey JS-Bibliothek nicht installiert ist, erhalten Sie die folgende Fehlermeldung, während Sie versuchen, die im nächsten Schritt erwähnte ./configure auszuführen.
checking for JS_NewObject in -lmozjs185... no configure: error: Could not find the js library. Is the Mozilla SpiderMonkey library installed?
CouchDB installieren
Laden Sie die neueste Version von Couchdb hier herunter. Oder Sie können das wget wie unten gezeigt verwenden, um es direkt herunterzuladen.
cd /usr/src wget http://apache.mirrors.pair.com/couchdb/releases/1.2.0/apache-couchdb-1.2.0.tar.gz tar xvfz apache-couchdb-1.2.0.tar.gz
Während der Installation von couchdb sollten Sie die Umgebungsvariablen ERL, ERLC, CURL_CONFIG wie unten gezeigt einstellen. Diese werden während der ./config von couchdb benötigt.
Genau wie die Voraussetzungen installieren wir couchdb im Verzeichnis /opt/couchdb. Geben Sie also das Präfix als /opt/couchdb/couchdb ein, wie unten gezeigt.
cd apache-couchdb-1.2.0 export ERL=/opt/couchdb/erlang/bin/erl export ERLC=/opt/couchdb/erlang/bin/erlc export CURL_CONFIG=/opt/couchdb/curl/bin/curl-config export LDFLAGS=-L/opt/couchdb/curl/lib ./configure --prefix=/opt/couchdb/couchdb --with-erlang=/opt/couchdb/erlang/lib/erlang/usr/include/ --enable-js-trunk make make install
Hinweis:Sie verwenden –enable-js-trunk nur, wenn Sie die neueste Version (alles neuer als js185-1.0.0) der SpiderMonkey JS-Engine installiert haben. Ich empfehle die Verwendung der Option –enable-js-trunk.
Wenn Sie nicht die neueste Version der Spidermonekey-JS-Engine verwenden, können Sie die Flags –with-js-include und –with-js-lib verwenden und auf die entsprechende Stelle verweisen, wie unten gezeigt.
./configure --prefix=/opt/couchdb/couchdb --with-erlang=/opt/couchdb/erlang/lib/erlang/usr/include/ --with-js-include=/usr/include/xulrunner-2/ --with-js-lib=/usr/lib64/xulrunner-devel-2/lib/
Hinweis:Wenn Sie die neueste Version von Spidermonkey js installiert haben und nicht –enable-js-trunk verwenden, erhalten Sie beim „Make“ von couchdb die folgende Fehlermeldung:
cc1: warnings being treated as errors In file included from couch_js/main.c:20: couch_js/sm170.c: In function req_status: couch_js/sm170.c:105: error: implicit declaration of function INT_FITS_IN_JSVAL couch_js/sm170.c: In function evalcx: couch_js/sm170.c:138: error: implicit declaration of function JS_GetStringChars couch_js/sm170.c:138: error: assignment makes pointer from integer without a cast couch_js/sm170.c: In function seal: couch_js/sm170.c:220: error: implicit declaration of function JS_SealObject couch_js/sm170.c: At top level: couch_js/sm170.c:236: error: initialization from incompatible pointer type
CouchDB-Startdienste einrichten
Erstellen Sie einen Couchdb-Benutzer, der vom Couchdb-Startprogramm benötigt wird.
# adduser couchdb
Ändern Sie den Eigentümer des var-Verzeichnisses, in das couchdb Protokolle und einige andere Informationen schreibt.
# chown -R couchdb /opt/couchdb/couchdb/var/
Erstellen Sie einen Link unter /etc/init.d für den couchdb-Dienst
# ln -s /opt/couchdb/couchdb/etc/rc.d/couchdb /etc/init.d/couchdb
Starten Sie abschließend den couchdb-Dienst.
# service couchdb start Starting database server couchdb
Überprüfen Sie, ob die Couchdb funktioniert, indem Sie zur URL gehen:http://{your-ip-address}:5984 , es sollte eine Webseite mit der folgenden Meldung angezeigt werden.
{“couchdb”:”Willkommen” ,,Version”:,,1.0.3″}
Gehen Sie zu:http://{Ihre-IP-Adresse}:5984/_utils/, von wo aus Sie die coucbdb-Datenbank erstellen und verwalten können.
Der nächste Artikel in dieser Serie erklärt, wie man eine CouchDB-Datenbank erstellt und einige grundlegende Datenmanipulationen durchführt.