MongoDB merupakan salah satu Document Based Database yang bersifat open source. Sebagai NoSQL database MongoDB menggunakan format dokumen selayaknya JSON dengan schemas. Untuk dapat menginstall MongoDB pada Slackware kita dapat menggunakan build package yang tersedia di Slackbuilds. Perhatian proses build package akan memakan waktu yang cukup lama.

How to Install

Sebelum menginstall MongoDB sesuai notes yang terdapat pada Slackbuilds kita perlu membuat user serta group untuk mongodb, eksekusi perintah berikut sebagai root

groupadd -g 285 mongo
useradd -u 285 -d /var/lib/mongodb -s /bin/false -g mongo mongo

Setelah proses installasi selesai, langkah selanjutnya adalah memberi permissions kepada mongodb daemon

chmod 765 /etc/rc.d/rc.mongodb

Jika ingin mongodb otomatis dijalankan ketika OS hidup, maka tambahkan file berikut pada file /etc/rc.d/rc.local.

if [ -x /etc/rc.d/rc.mongodb ]; then
    /etc/rc.d/rc.mongodb start
fi

Untuk masuk kedalam mongodb, pada CLI masukan perintah mongo

Database & Collection

Untuk membuat database baru pada MongoDB kita cukup mengeksekusi perintah

# use <database_name>
use demo

Database yang baru saja dibuat tidak akan langsung tampil atau tersimpan sebelum kita membuat sebuah collections. Collections jika dikaitkan dengan RDBMS maka bisa disebut sebagai table, namun tentu antara table dengan collections adalah dua hal yang berbeda. Untuk dapat membuat collections terdapat dua cara.

  • db.createCollection("coll_name")

Kita dapat menggunakan perintah createCollection() untuk membuat collections baru dengan beberapa opsi tambahan, sebagai contoh

# db.createCollection("coll_name");
db.createCollection("students");
  • Insert Document

Selain perintah createCollection(), MongoDB akan secara otomatis membuat collections ketika kita menambahkan data baru, sebagai contoh

# db.coll_name.insert({ data });
db.students.insert({name:"James", age: 13});

MongoDB Command

  • db.dropDatabase(): menghapus database.
  • db.coll_name.drop(): menghapus collections
  • show dbs: menampilkan list database.
  • show collections: menampilkan list of collections pastikan telah berada pada database yang dituju.
  • db.coll_name.find() or db.coll_name.find().pretty(): menampilkan semua data pada collections.
  • db.coll_name.save({"name": "James"}): menambahkan data baru.
  • $set: untuk mengupdate data: db.coll_name.update({_id:ObjectId('...')}, {$set: {name: "James"}})
  • db.coll_name.remove(_id:ObjectId('...')): remove data by id

Notes: coll_name adalah nama collections