CouchDB
CouchDB ist
Installation
pacman -S couchdb
Start / Stop des Servers
systemctl start|stop|restart couchdb
Beim booten des Servers automatisch starten:
systemctl enable couchdb
Zugriff von außen
Nach Installation ist couchdb lediglich auf dem installieren Rechner erreichbar. Anpassung von ´/etc/couchdb/local.ini´ für den ZUgriff von jeden Rechner aus:
# bind_address = 127.0.0.1
bind_address = 0.0.0.0
Test im Browser auf Port 5984.
Administration
Die Administrationssoftware Futon ist über den Browser auf Port 5984 und Verzeichnis /_utils erreichbar.
Sicherheit
In CouchDB ist nach frischer Installation jeder ein Administrator. Rechts Unten ist in Futon ein Fix It Link, welcher ein Admin-Account anlegt. Danach ist aber immer noch jede Datenbank für den Rest der Welt beschreibbar. Auch die User-Datenbank. Über den Menüpunkt Security in einer Datenbank, können User als Member (unter Names) eingetragen werden. Danach ist die Datenbank nur noch für authentifizierte User les- und schreibbar. Eine gute Zusammenfassung bietet auch: http://blog.lizconlan.com/sandbox/securing-couchdb.html.
Links
- CouchDB im Arch-Wiki: https://wiki.archlinux.org/index.php/couchdb
- CouchDB Dokumentation
CouchDB und Java
CouchDB ist sehr einfach unter Java mit der LightCouch API und google-gson zu verwenden.
LightCouch Userguide.
Maven:
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.3.1</version>
</dependency>
In Java:
CouchDbProperties properties;
CouchDbClient db;
properties = new CouchDbProperties()
.setDbName("wetter")
.setCreateDbIfNotExist(false)
.setProtocol("http")
.setHost("192.168.56.101")
.setPort(5984)
.setMaxConnections(100)
.setConnectionTimeout(0);
db = new CouchDbClient(properties);
JsonObject j = new JsonObject();
j.addProperty("wmoid", 10382);
db.save(j);