MongoDB is a "web-scale" key-value NoSQL document oriented database. MongoDB is similar to CouchDB but is designed to handle a different style work-load.
Installing MongoDB
Ensure that the proper USE flags are set.
[ebuild N ~] dev-lang/spidermonkey-1.7.0-r2 USE="threadsafe unicode" [ebuild N ~] app-arch/snappy-1.0.4 USE="-static-libs" [ebuild N ] dev-util/scons-2.1.0 USE="-doc" [binary N ] app-admin/eselect-boost-0.4 [binary N ] dev-libs/boost-1.48.0-r2 USE="-debug -doc eselect -icu -mpi python -static-libs -test -tools" [ebuild N ~] dev-db/mongodb-2.0.5 USE="-mms-agent -static-libs -v8"
Configuring MongoDB
MongoDB is crazy easy to configure (initially), edit the settings in /etc/conf.d/mongodb
.
# Mongodb essentials MONGODB_EXEC="/usr/bin/mongod" MONGODB_RUN="/var/run/mongodb" MONGODB_DATA="/var/lib/mongodb" MONGODB_USER="mongodb" # Listen to specified IP, comment this to listen to all MONGODB_IP="127.0.0.1" # Listen to specified port MONGODB_PORT="27017" # Set extra options here, such as disabling the admin web server MONGODB_OPTIONS="--journal"
Tuning MongoDB
Looking at the manual for MongoDB.
Securing Mongo
- Ensure that Mongo is bound to the correct IP (bindIp) and that correct firewall rules are in place