diskon 50% semua paket, waktu terbatas. Mulai dari $2.48/mo
12 menit tersisa
Database & Analytics

Cara Menginstal MongoDB di Tiga Versi Terbaru Ubuntu (Langkah demi Langkah)

Jim Schwarz By Jim Schwarz 12 menit baca
Simbol asli MongoDB yang ditampilkan pada server futuristik untuk menginstal MongoDB di Ubuntu + tagline tentang apa yang bisa diharapkan dari artikel + judul artikel + logo merek Cloudzy

Jadi kamu sudah memutuskan untuk menggunakan MongoDB, pilihan yang tepat alternative to MariaDB untuk membangun aplikasi MERN stack, platform analitik, atau sistem berbasis dokumen apa pun, tetapi sudah mentok dengan perintah Linux yang biasa dan berbagai error di terminal. 

Tenang saja, panduan ini mencakup semua yang perlu kamu ketahui dari awal hingga akhir untuk menginstal MongoDB di Ubuntu.

MongoDB menggunakan X.Y.Z pengelolaan versi. 8.0 adalah utama seri rilis, dan 8.2 adalah kecil rilis dalam siklus 8.0 tersebut. Rilis minor menambahkan fitur di dalam siklus mayor yang sama dan, mulai dari 8.0, juga tersedia untuk instalasi on-prem pada kasus penggunaan tertentu (misalnya, Search dan Vector Search). MongoDB 8.0 di Ubuntu mendukung 24.04 (Noble), 22.04 (Jammy), dan 20.04 (Focal) pada sistem 64-bit, dengan dukungan ARM64 di platform tertentu.

Prasyarat GnuPG dan Curl

Sebelum menginstal versi resmi mongodb-org paket Ubuntu memerlukan dua prasyarat: GnuPG dan Curl. Alat-alat ini memberi Ubuntu izin untuk mengunduh MongoDB, karena Ubuntu sendiri mongodb paket ini tidak dikelola oleh MongoDB Inc. dan bertentangan dengan yang resmi mongodb-org paket. Jika Anda sudah menginstal mongodb pastikan untuk menghapusnya terlebih dahulu.

Selanjutnya, jalankan perintah sudo apt-get install gnupg curl. Curl adalah alat untuk mengunduh file dari internet dan diperlukan untuk mengambil kunci keamanan MongoDB. GnuPG digunakan oleh Ubuntu untuk memverifikasi keaslian perangkat lunak. Jika GnuPG tidak terpasang, Ubuntu tidak dapat memverifikasi paket MongoDB.

Pastikan terminal Anda berhasil menginstal GnuPG dan Curl. Jika berhasil, tampilannya akan seperti ini:Output terminal Ubuntu setelah menambahkan GnuPG dan Curl

Mengimpor GPG Key MongoDB

Package manager Ubuntu, yaitu APT, menggunakan GPG key untuk memverifikasi paket sebelum diinstal. Tanpa GPG key ini, Ubuntu tidak mengizinkan repositori MongoDB ditambahkan. Ketik perintah berikut di terminal Anda untuk menambahkan key tersebut:

curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \
   sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \
   --dearmor

Jika berhasil, output terminal Anda akan terlihat seperti ini:Terminal Ubuntu setelah berhasil menambahkan GPG key MongoDB.

Singkatnya, perintah ini mengunduh tanda tangan keamanan MongoDB, mengonversinya ke format yang dapat dibaca Ubuntu, lalu menyimpannya di folder sistem yang aman. Berikut penjelasan setiap bagian dari baris perintah tersebut:

  1. curl -fsSL URL mengunduh key resmi MongoDB
  2. –dearmor mengonversi key dari format teks ke format biner agar dapat dibaca oleh Ubuntu
  3. -o /usr/share/keyrings/mongodb-server-8.0.gpg menyimpan file biner ke folder tempat Ubuntu menyimpan key yang dipercaya

Jika setiap perintah dijalankan dengan tepat, GPG key publik akan ditambahkan tanpa masalah. Namun, sebagian pengguna mengalami kendala saat mengunduh MongoDB karena GPG key yang tidak sesuai. Error seperti:

NO_PUBKEY
The following signatures couldn't be verified
public key not available

Muncul ketika Anda tidak mengikuti perintah GPG key sebelumnya dengan tepat, melainkan menggunakan sudo apt-key karena Ubuntu versi terbaru tidak merekomendasikannya.

Menambahkan Repositori MongoDB

Menambahkan repositori MongoDB akan membuat sebuah file yang memberi tahu Ubuntu bahwa paket MongoDB tersedia di alamat internet tertentu. Buat file list di /etc/apt/sources.list.d/mongodb-org-8.0.list dengan menulis baris repositori ke dalamnya menggunakan echo … | sudo tee …

Di sinilah prosesnya menjadi sedikit lebih rumit, karena setiap versi Ubuntu membutuhkan variasi perintah yang berbeda. Berikut ini kita akan membahas cara mengimpor file list pada ketiga versi Ubuntu yang telah disebutkan sebelumnya.

Ubuntu 24.04 (Noble)

Untuk membuat file list di Ubuntu 24.04, cukup jalankan echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list di terminal Anda.

Perintah ini mungkin terlihat rumit, tapi jangan khawatir. Setelah kita uraikan bagian per bagian, semuanya akan jelas.

  1. echo mencetak teks
  2. /etc/apt/sources.list.d adalah folder tempat Ubuntu menyimpan definisi sumber perangkat lunak. Setiap file berformat .list di dalam folder ini mengarahkan Ubuntu ke lokasi tertentu untuk mengunduh perangkat lunak
  3. Secara default, pengguna biasa tidak dapat menulis apa pun ke dalam folder sistem. kaus memberikan izin khusus kepada pengguna untuk menulis teks ke dalam file sistem, sementara menggunakan sudo
  4. mulia adalah nama kode untuk Ubuntu 24.04. Setiap versi Ubuntu memiliki nama kode, seperti:
Versi Nama Kode
20.04 Fokus
22.04 Jammy
24.04 Mulia

Jika versi Ubuntu yang Anda gunakan tidak sesuai dengan perintah yang tepat, Ubuntu tidak akan mengenali repositori MongoDB.

Ubuntu 22.04 (Jammy)

Menambahkan file list ke Ubuntu Jammy caranya sama, tetapi Anda harus memasukkan perintah dengan mengganti mulia dengan jammyI'd be happy to help translate to Indonesian, but I notice the text to translate appears to be incomplete or unclear. Could you please provide the English text you'd like me to translate?

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list

Pastikan nama kode yang digunakan sesuai dengan versi Ubuntu Anda, jika tidak perintah akan gagal.

Ubuntu 20.04 (Focal)

Ikuti langkah yang sama di sini, tetapi alih-alih menggunakan mulia or jammy, masukkan focal:

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list

Setelah repositori siap, Anda bisa melanjutkan ke proses instalasi mongodb-org.

Perbarui Database Paket

Setelah repositori dikenali oleh Ubuntu, Anda perlu memuat ulang database paket di dalamnya agar MongoDB ikut tercakup mulai sekarang. Jalankan perintah berikut:

sudo apt-get update

Perintah ini berlaku sama untuk semua versi Ubuntu. Jika dilewati, Ubuntu tidak akan menyertakan MongoDB. Jika perintah berhasil dijalankan, output terminal Anda akan terlihat seperti ini:Output terminal Ubuntu setelah menjalankan sudo apt-get update

 Setelah database paket dimuat ulang, saatnya mengunduh paket-paket MongoDB.

Instal MongoDB Community Server

Ada berbagai rilis MongoDB yang bisa diinstal, tetapi kebanyakan pengguna memilih versi stabil terbaru karena lebih andal. Untuk menginstal versi stabil terbaru, jalankan sudo apt-get install -y mongodb-org

Ubuntu kini telah mengunduh paket-paket MongoDB, menginstalnya, membuat akun pengguna dan direktori data untuk MongoDB, serta mendaftarkannya sebagai layanan sistem. Sampai di sini, kita sudah membahas cara mengunduh MongoDB di Ubuntu. Sekarang mari kita jalankan.

Cara Menjalankan MongoDB

Sekarang, agar MongoDB dapat berjalan, kita perlu memberi tahu service manager Ubuntu, yaitu "systemd", untuk mengenali MongoDB sebagai layanan latar belakang. Caranya, ketik perintah berikut di terminal Anda:

sudo systemctl start mongod

Jika perintah berhasil, Ubuntu akan menjalankan MongoDB sebagai aplikasi latar belakang. Namun jika perintah gagal, Anda mungkin akan menerima pesan error seperti Gagal memulai mongod.service.

Hal ini bisa terjadi karena beberapa masalah umum:

  • Kesalahan file konfigurasi in /etc/mongod.conf (kesalahan indentasi YAML sering terjadi)
  • Konflik Port (port 27017 sudah digunakan)
  • Masalah izin akses pada direktori data atau log (var/lib/mongodb atau var/log/mongodb)
  • Disk penuh or kondisi filesystem yang rusak

Tiga Perintah untuk Mendiagnosis MasalahTampilan server futuristik beserta tiga perintah terminal Ubuntu dan tulisan jalur upgrade di awan.

Mudah untuk menduga apa yang salah dengan konfigurasi Anda sehingga MongoDB tidak berjalan, tapi menentukan penyebab pastinya jauh lebih sulit. Berikut tiga cara mudah untuk mendiagnosis sumber error tersebut:

  1. Periksa status layanan: sudo systemctl status mongod –no-pager
  2. Periksa log detail (yang paling penting): sudo journalctl -u mongod –no-pager -n 100
  3. Periksa file log milik MongoDB

Perlu diperhatikan bahwa jika disk Anda penuh atau file sistem rusak, perbaikannya lebih berkaitan dengan perangkat keras daripada perangkat lunak. Jika setup server yang ada sudah ketinggalan zaman, pengguna mungkin perlu mengganti perangkat agar MongoDB dapat berjalan dengan baik. 

Jika membeli server fisik bukan pilihan yang sesuai anggaran Anda, pertimbangkan untuk melihat Ubuntu VPS dari Cloudzy, untuk pengalaman server pribadi yang bersih dengan distro Ubuntu pilihan Anda. Layanan ini hadir dengan 24/7 dukungan dan hingga 40Gbps kecepatan jaringan, berkat Penyimpanan NVMe SSD dan DDR5 RAM penyimpanan

Selain itu, latensinya sangat rendah, 99.95% uptime, dan a 14 hari garansi uang kembali. Tak hanya itu, layanan ini juga tersedia di 12 lokasi di seluruh dunia dengan harga yang terjangkau.

Tiga Solusi Paling Umum untuk Menjalankan MongoDB

Tidak ada cara pasti untuk mengetahui masalah spesifik sistem Anda dengan MongoDB sekaligus memperbaikinya dalam satu langkah. Berikut beberapa solusi umum yang bisa Anda coba untuk menjalankan MongoDB.

  1. Kesalahan indentasi pada konfigurasi YAML. Misalnya Anda telah mengedit /etc/mongod.conf periksa kembali indentasinya dengan menjalankan sudo nano /etc/mongod.conf. File YAML cukup sensitif terhadap spasi, jadi pastikan setiap level hanya menggunakan dua spasi di /etc/mongod.conf.
  2. Port 27017 sedang digunakan. Jika ada proses lain yang menggunakan port 27017, hentikan proses tersebut atau ubah port MongoDB di mongod.conf. Jika Anda tidak yakin proses apa yang sedang berjalan di port 27017, jalankan saja sudo ss -lntp | grep 27017 untuk mencobanya
  3. Masalah izin pada direktori data. Terkadang MongoDB tidak memiliki izin yang cukup untuk berjalan di sistem Anda, sehingga sama sekali tidak bisa dijalankan. Pertama, jalankan sudo chown -R mongodb:mongodb /var/lib/mongodb /var/log/mongodb, lalu restart MongoDB dengan sudo systemctl restart mongod

Menurut Situs resmi MongoDB, cara lain untuk mengatasi masalah ini adalah dengan memuat ulang daemon menggunakan sudo systemctl daemon-reload, kemudian jalankan perintah pertama, sudo systemctl start mongod, lagi.

Jika tidak ada mongod.service, proses instalasi tidak menempatkan unit systemd, jadi instal ulang mongodb-org paket diatur.

Setelah semua langkah di atas, Anda bisa memverifikasi apakah MongoDB berhasil berjalan dengan sudo systemctl status mongod. Jika terminal menampilkan aktif (berjalan), semuanya sudah beres. Namun masih ada beberapa konfigurasi tambahan yang bisa membuat pengalaman Anda jauh lebih lancar.

Otomatiskan MongoDBTampilan server futuristik dengan simbol otomatisasi MongoDB + terminal dengan perintah MongoDB + file log

MongoDB tidak otomatis berjalan setiap kali server dinyalakan; Anda perlu mengulangi beberapa langkah yang disebutkan setiap kali. Sebagai alternatif, Anda dapat mengatur Ubuntu untuk menjalankan MongoDB secara otomatis setelah masuk ke desktop.

Cukup jalankan sudo systemctl enable mongod di terminal Anda. Perintah ini akan menginstruksikan sistem untuk menjalankan MongoDB setiap kali reboot. Selain itu, Anda dapat me-restart proses mongod dengan menjalankan perintah sudo systemctl restart mongod. Pengguna juga dapat memantau proses ini untuk menemukan error atau pesan penting dengan memeriksa output di file:

/var/log/mongodb/mongod.log

Setelah semuanya siap, mari mulai menggunakan mongod Anda.

Membuka Shell MongoDB

Untuk berinteraksi dengan database, pengguna perlu membuka shell MongoDB dengan menjalankan perintah mongosh. Anggap saja ini sebagai terminal khusus untuk MongoDB atau konsol MySQL. Sebagai alternatif, Anda juga bisa berinteraksi dengan MongoDB menggunakan alat GUI, seperti driver MongoDB. Namun jika Anda ingin berinteraksi langsung dari terminal, mongosh adalah pilihan yang tepat untuk itu.

MongoDB Anda kini sudah berfungsi penuh, tetapi ada beberapa langkah tambahan yang perlu dilakukan agar lebih aman.

Aktifkan Autentikasi MongoDBProses autentikasi MongoDB + simbol kunci + konfirmasi autentikasi.

Secara default, MongoDB tidak memiliki perlindungan kata sandi karena Anda harus sudah memiliki akses untuk membuat pengguna. Berikut cara mudah untuk melakukannya

Buat Pengguna Admin

Pertama, Anda perlu beralih ke database admin dengan:

use admin

Kemudian buat pengguna dengan db.createUser({…}). Isi dengan

  • Nama pengguna
  • Kata sandi
  • Peran

Untuk role, sebaiknya ketik root yang berarti akses penuh atau admin.

Aktifkan Autentikasi

Setelah pengguna kita siap, kita perlu mengedit file /etc/mongod.conf . File ini mengontrol perilaku MongoDB. Perlu diingat, setiap kali Anda mengedit file ini, Anda harus selalu me-restart mongod layanan setelahnya dengan sudo systemctl restart mongod. Yang perlu diubah di sini adalah satu parameter bernama authorization yang terlihat seperti ini:

security:

  authorization:

Untuk menyelesaikan proses autentikasi, cukup ubah nilai authorization seperti ini:

security:

  authorization: enabled

Mulai sekarang, MongoDB memerlukan login, sehingga autentikasi Anda telah selesai. Mari lanjutkan ke konfigurasi lain yang memanfaatkan MongoDB secara penuh.

Buka Firewall Anda

Seperti yang disebutkan sebelumnya, MongoDB berjalan pada port 27017. Karena firewall memblokir port secara default, Anda perlu memberi tahu firewall untuk mengizinkan aplikasi berjalan pada port 27017. Untuk melakukannya, jalankan perintah berikut:

ufw allow from YOUR_IP to any port 27017

Atau, Anda juga bisa menjalankan perintah ufw allow 27017, tetapi berhati-hatilah, karena menjalankan perintah ini akan mengizinkan seluruh internet mengakses port tersebut. Pilihan pertama lebih aman karena hanya mengizinkan lalu lintas dari alamat IP Anda.

Pengguna mungkin masih menghadapi masalah saat menjalankan MongoDB, seperti masalah akses jarak jauh. Baca terus untuk mengetahui cara mengatasinya.

Masalah Akses Jarak JauhPengaturan server dengan 3 monitor untuk mengonfigurasi pengaturan akses jarak jauh MongoDB + perintah terminal.

MongoDB dijalankan dengan bindIp. bindIp membatasi MongoDB ke 127.0.0.1, yang hanya mengizinkan koneksi lokal. Oleh karena itu, jika Anda mencoba terhubung ke server MongoDB dari lokasi lain, akses akan ditolak, karena secara default MongoDB hanya mengizinkan koneksi lokal kecuali dikonfigurasi sebaliknya.

Kembali ke /etc/mongod.conf, dan Anda akan melihat tiga baris seperti ini:

net:

  port: 27017

  bindIp: 127.0.0.1

Jika Anda ingin mengizinkan koneksi jarak jauh ke mongod user Anda, ubah nilai di atas seperti ini:

net:

  port: 27017

  bindIp: 0.0.0.0

Setelah itu, restart mongod layanan dengan sudo systemctl restart mongod seperti setiap kali Anda melakukan perubahan pada file tersebut.

Anda kini telah memberikan mongod izin layanan untuk menerima koneksi jarak jauh. Namun berhati-hatilah, karena dengan melakukan ini, database Anda akan terekspos ke seluruh internet jika Anda belum mengautentikasi mongod user Anda. Banyak bot yang terus-menerus memindai port MongoDB yang terbuka, jadi pastikan user mongod Anda selalu memiliki kata sandi.

Ringkasan Keseluruhan

Selamat, Anda telah menyelesaikan semua langkah untuk membuat layanan MongoDB yang optimal untuk sistem Ubuntu Anda. Berikut juga peta langkah-langkah yang dibahas dalam artikel ini.

Perintah Apa Fungsinya
apt update Perbarui daftar perangkat lunak
apt pasang Instal perangkat lunak
curl Unduh file
gpg Kelola kunci enkripsi
echo Cetak teks
kaus Tulis ke file yang dilindungi
systemctl start Mulai layanan
systemctl enable Mulai saat boot
systemctl status Periksa layanan
mongosh Masuk ke shell MongoDB
Sunting /etc/mongod.conf Aktifkan autentikasi
ufw Kelola firewall
bindIp Izinkan akses jarak jauh

Semoga penjelasan di atas membantu kamu memahami keseluruhan prosesnya. Tapi jika mengatur MongoDB sendiri terasa terlalu rumit, coba jalankan MongoDB VPS untuk server Ubuntu 24.04 LTS pribadi kamu dengan MongoDB yang sudah terpasang.

Dilengkapi dengan 99.95% uptime, 24/7 dukungan, dan sebuah 14 hari garansi uang kembali. Selain itu, mendukung hingga 40 Gbps bandwidth berkat DDR5 RAM dan Penyimpanan NVMe SSD penyimpanannya. Tak perlu khawatir soal lokasi kamu, karena layanan ini juga tersedia di 12 lokasi di seluruh dunia dengan harga terjangkau.

Dengan semua langkah yang sudah dilalui, kamu kini berhasil menyiapkan layanan MongoDB sendiri yang lengkap dengan semua konfigurasi untuk menangani beban kerja dan bisnis tingkat produksi.

Bagikan

Artikel lainnya dari blog

Terus baca.

Manajemen Data Cerdas untuk Bisnis Anda: Strategi Penyimpanan dan Backup "Seperti Cloud" dengan VPS
Database & Analytics

Manajemen Data Cerdas untuk Bisnis Anda: Strategi Penyimpanan dan Backup "Seperti Cloud" dengan VPS

VPS untuk manajemen data bisnis yang aman adalah strategi yang saya rekomendasikan setiap kali perusahaan memutuskan sudah saatnya berhenti mengelola file yang tersebar di laptop, lampiran email, dan folder yang setengah terlupakan

Rexa CyrusRexa Cyrus 7 menit baca
Materialized View vs. View
Database & Analytics

Materialized View vs. View: Memahami Perannya dalam Database

Dalam sistem database, materialized view sebagai objek database menyimpan hasil prakalkulasi dari sebuah query dalam bentuk tabel fisik. Karena data benar-benar disimpan di disk, kueri yang kompleks

Ivy JohnsonIvy Johnson 7 menit baca
SnowFlake vs DataBricks
Database & Analytics

Databricks vs Snowflake: Perbandingan Jujur dari Para Profesional Data 🧱❄️

Bagi bisnis yang mengandalkan data untuk mengambil keputusan, baik itu platform e-commerce yang melacak perilaku pelanggan, lembaga keuangan yang memproyeksikan tren, maupun perusahaan teknologi

Allan Van KirkAllan Van Kirk Baca dalam 13 menit

Siap untuk di-deploy? Mulai dari $2.48/bulan.

Cloud independen, sejak 2008. AMD EPYC, NVMe, 40 Gbps. Garansi uang kembali 14 hari.