Topik ini menyiapkan lingkungan kerja untuk seluruh jalur MongoDB, yaitu memasang mongosh, menyiapkan server MongoDB, dan memuat data contoh pertama. Dua pilihan server dibahas, yakni MongoDB lokal dan kluster tier gratis pada Atlas. Setelah langkah-langkahnya selesai, perintah pada contoh-contoh jalur ini dapat dijalankan langsung.
Server dan shell#
Instalasi MongoDB melibatkan dua komponen yang berbeda peran. Server bernama mongod adalah proses yang menyimpan dan mengelola data, sedangkan mongosh adalah shell tempat perintah diketik dan diterjemahkan menjadi operasi basis data. Keduanya dapat dipasang pada mesin yang sama, dan keduanya juga dapat terpisah, misalnya server berjalan di Atlas sedangkan mongosh berjalan di mesin lokal.
Pemisahan ini meniru pola klien-server yang umum pada basis data. Aplikasi, shell, dan alat baris perintah lain berperan sebagai klien yang mengirim perintah, sedangkan server yang merespons, menulis ke disk, dan menjaga keutuhan data. Pada lingkungan produksi, proses server biasanya diurus manajer layanan seperti systemd atau orkestrator kontainer. Karena pola itu, memasang mongosh saja sudah cukup untuk terhubung ke server mana pun yang mengizinkan koneksi, termasuk server milik Atlas. Seluruh contoh pada jalur ini diketik di dalam mongosh, sehingga shell wajib terpasang lebih dulu daripada komponen lainnya.
Memasang mongosh#
mongosh disediakan melalui halaman unduhan resmi dan repositori paket untuk berbagai sistem operasi, termasuk Windows, macOS, dan Linux. Pada Ubuntu dan Debian, pemasangan dilakukan dengan menambahkan repositori resmi MongoDB terlebih dahulu, lalu memasang paket bernama mongodb-mongosh.
# tidak-dijalankan
# contoh pemasangan mongosh pada Ubuntu/Debian dari repositori resmi MongoDB
curl -1 https://www.mongodb.com/static/pgp/server-8.0.asc | sudo tee /etc/apt/trusted.gpg.d/mongodb-server-8.0.asc
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
sudo apt-get update
sudo apt-get install -y mongodb-mongoshInstruksi lengkap untuk Windows, macOS, dan distribusi Linux lainnya ada pada dokumentasi pemasangan mongosh yang tercantum di bagian Referensi. Selain repositori apt pada contoh di atas, mongosh juga tersedia melalui pengunduhan langsung, Homebrew pada macOS, dan paket resmi untuk distribusi lain. Setelah pemasangan selesai, versi terpasang diperiksa dengan opsi --version.
# memeriksa versi mongosh yang terpasang
mongosh --version2.5.10Angka pada keluaran berasal dari lingkungan tempat jalur ini dikalibrasi, yaitu mongosh 2.5.x. Versi pada mesin lain boleh lebih baru, dan perbedaan kecil pada angka versi tidak memengaruhi perintah mana pun di sepanjang jalur ini.
Menyiapkan server MongoDB#
Dua pilihan server tersedia untuk mengikuti jalur ini, dan salah satunya saja sudah cukup. Pilihan pertama adalah MongoDB lokal yang dijalankan pada mesin sendiri, misalnya melalui paket mongodb-org atau kontainer Docker. Pilihan kedua adalah kluster tier gratis M0 pada Atlas, yaitu layanan MongoDB yang berjalan di cloud dan dikelola oleh pihaknya.
Server lokal dijalankan dengan perintah mongod yang diarahkan ke folder data. Perintah ini berjalan di latar depan (foreground), sehingga terminalnya tetap terbuka selama server hidup dan server berhenti bila prosesnya dihentikan. Folder datanya cukup satu direktori kosong yang dibuat lewat mkdir, dan MongoDB mengisinya dengan berkas internal miliknya sendiri.
# tidak-dijalankan
# menjalankan server MongoDB lokal dengan folder data khusus
mkdir -p ~/mongodb-data
mongod --dbpath ~/mongodb-dataKluster Atlas disiapkan melalui langkah berikut.
- Membuat akun di cloud.mongodb.com, lalu membuat kluster baru dengan tingkat M0 yang gratis.
- Membuat pengguna basis data beserta kata sandinya pada menu Database Access.
- Mendaftarkan alamat IP pada menu Network Access agar koneksi dari mesin diizinkan.
- Membuka dialog Connect pada kluster, lalu menyalin string koneksi (connection string) yang disediakan.
# tidak-dijalankan
# terhubung ke kluster Atlas, nama kluster disesuaikan dengan akun masing-masing
mongosh "mongodb+srv://kluster-lab.abcde.mongodb.net/praktik" --username pembelajarPerintah itu meminta kata sandi pengguna basis data setelah dijalankan. Awalan mongodb+srv menandakan string koneksi milik Atlas yang mencari alamat kluster melalui DNS, sedangkan praktik pada ujung alamat adalah nama basis data yang langsung dipakai setelah terhubung.
Memuat data contoh#
Basis data praktik yang dipakai pada contoh-contoh awal diisi melalui berkas JSON dan alat mongoimport. Berkasnya berisi lima dokumen pengukuran suhu laboratorium dari tiga perangkat berbeda, dan isinya ditampilkan utuh sebagai berikut.
[
{ "kodeSampel": "LBR-201", "perangkat": "suhu-lab-1", "suhuC": 23.8, "kelembapanPersen": 55, "sumber": "sensor" },
{ "kodeSampel": "LBR-202", "perangkat": "suhu-lab-1", "suhuC": 24.1, "kelembapanPersen": 56, "sumber": "sensor" },
{ "kodeSampel": "LBR-203", "perangkat": "suhu-lab-2", "suhuC": 22.9, "kelembapanPersen": 61, "sumber": "sensor" },
{ "kodeSampel": "LBR-204", "perangkat": "suhu-lab-2", "suhuC": 23.2, "kelembapanPersen": 60, "sumber": "sensor" },
{ "kodeSampel": "LBR-205", "perangkat": "suhu-lab-3", "suhuC": 25.4, "kelembapanPersen": 48, "sumber": "kalibrasi" }
]mongoimport membaca berkas itu lalu menyisipkan seluruh isinya ke satu koleksi. Koleksi pengukuran dibuat otomatis saat impor pertama berjalan, sehingga tidak ada persiapan koleksi yang diperlukan. Opsi --jsonArray menandakan isi berkas berupa array dokumen, opsi --drop mengosongkan koleksi terlebih dahulu supaya perintah yang sama aman dijalankan berulang, sedangkan --quiet menenyapkan ringkasan progres yang biasanya dicetak. Perintahnya dijalankan dari folder tempat berkas berada.
# memuat data contoh ke basis data praktik
mongoimport --db praktik --collection pengukuran --jsonArray --drop --quiet --file pengukuran.jsonPerintah di atas senyap karena opsi --quiet. Jumlah dokumen yang termuat kemudian diperiksa dengan countDocuments().
# memastikan jumlah dokumen pada koleksi pengukuran
mongosh praktik --quiet --eval 'db.pengukuran.countDocuments()'5Nilai lima pada keluaran menegaskan seluruh isi berkas sudah termuat. Basis data praktik kini siap dipakai, dan berkas yang sama dapat diimpor ulang kapan pun data contoh perlu direset. Reset semacam ini berguna setelah contoh penghapusan, karena isi awal koleksi dapat dipulihkan dengan satu perintah yang sama.
Ringkasan#
- mongosh adalah shell untuk mengirim perintah, sedangkan
mongodadalah servernya, dan keduanya dipasang secara terpisah. - Server dapat berupa MongoDB lokal melalui
mongodatau kluster tier gratis M0 pada Atlas yang terhubung lewat string koneksimongodb+srv. - Data contoh termuat ke basis data praktik melalui
mongoimportdengan opsi--jsonArray,--drop, dan--quiet. - Perintah impor yang sama aman dijalankan ulang karena
--dropmengosongkan koleksi sebelum mengisinya.
Referensi#
- MongoDB Shell (mongosh) — MongoDB Documentation — Panduan resmi mongosh, mulai dari pengenalan sampai cara memasangnya.
- Install mongosh — MongoDB Documentation — Instruksi pemasangan mongosh untuk Windows, macOS, dan Linux.
- Getting Started with Atlas — MongoDB Atlas — Langkah resmi menyiapkan kluster Atlas pertama hingga koneksi berhasil.