15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai
18.09.2025

Cara Membuat MongoDB di VPS

MongoDB adalah database NoSQL yang populer dan berkinerja tinggi yang digunakan untuk aplikasi modern yang membutuhkan model data yang fleksibel, pembacaan/penulisan yang cepat, dan skala horizontal yang mudah. Jika Anda menerapkan API, platform SaaS, CRM, backend e-commerce, atau layanan berbasis data lainnya, menjalankan MongoDB di VPS memberi Anda kontrol penuh atas kinerja, keamanan, dan biaya.

Dalam panduan ini, Anda akan belajar cara menginstal MongoDB Community Edition (rilis terbaru yang didukung) di VPS Linux menggunakan repositori resmi MongoDB, memulai dan mengaktifkan layanan, membuat pengguna dan database, serta menerapkan praktik terbaik keamanan yang penting (autentikasi, pengikatan jaringan yang aman, dan aturan firewall). Langkah-langkah ditulis untuk penerapan gaya produksi dan mencakup tips pemecahan masalah umum sehingga Anda dapat menjalankan MongoDB dengan andal sejak hari pertama.

Prasyarat (daftar periksa cepat)

  • Sebuah VPS dengan akses root/sudo

  • OS 64-bit (MongoDB 8.0 mendukung Debian 12 Bookworm, Ubuntu LTS)

  • Direkomendasikan untuk produksi: baca catatan produksi MongoDB (sistem file, memori, ulimits, dll.)

Perbarui server Anda terlebih dahulu:

sudo apt-get update && sudo apt-get -y upgrade
sudo apt-get install -y gnupg curl

Penting: jangan gunakan paket distro mongodb (ini dapat bertentangan dengan mongodb-org).

 Instal MongoDB di Debian 12 (Bookworm)

Tambahkan kunci + repositori resmi

curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc |
sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-8.0.gpg
echo "deb [signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg] https://repo.mongodb.org/apt/debian bookworm/mongodb-org/8.0 main" |
sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list > /dev/null

Instal

sudo apt-get update
sudo apt-get install -y mongodb-org

(Perintah ini berasal dari dokumen instalasi resmi MongoDB untuk Debian 12.)

Instal MongoDB di Ubuntu LTS (24.04 / 22.04)

Tambahkan kunci + repositori resmi

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

Ubuntu 24.04 (Noble):

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

Ubuntu 22.04 (Jammy):

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

Instal

sudo apt-get update
sudo apt-get install -y mongodb-org

 Mulai MongoDB (dan perbaiki “mongod.service tidak ditemukan”)

sudo systemctl daemon-reload
sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod --no-pager

MongoDB secara khusus mencatat daemon-reload jika Anda melihat “Unit mongod.service tidak ditemukan”.

“Buat” database + pengguna Anda (alur yang direkomendasikan)

Buka shell secara lokal di VPS:

mongosh

Buat pengguna admin

Di mongosh:

use admin
db.createUser({
user: "admin",
pwd: "STRONG_PASSWORD_HERE",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ]
})

Buat database + pengguna aplikasi

use myapp
db.createUser({
user: "myapp_user",
pwd: "STRONG_PASSWORD_HERE",
roles: [ { role: "readWrite", db: "myapp" } ]
})

 Amankan MongoDB (jangan lewatkan ini)

Daftar periksa keamanan MongoDB sangat merekomendasikan penguatan sebelum mengekspos apapun.

A) Jaga MongoDB tetap pribadi (praktik terbaik)

MongoDB memperingatkan untuk hanya mengikat ke jaringan yang tepercaya.
Di /etc/mongod.conf, pastikan ia hanya mendengarkan di localhost (atau IP LAN pribadi):

net:
bindIp: 127.0.0.1

Mulai ulang:

sudo systemctl restart mongod

B) Aktifkan autentikasi

Edit /etc/mongod.conf:

security:
authorization:enabled

Mulai ulang:

sudo systemctl restart mongod

C) Aturan firewall (hanya jika Anda benar-benar membutuhkan akses jarak jauh)

Hindari membuka 27017 ke internet publik. Jika Anda harus mengizinkan akses, batasi ke satu IP (contoh dengan UFW):

sudo ufw allow from YOUR.PUBLIC.IP.ADDRESS to any port 27017 proto tcp
sudo ufw enable
sudo ufw status

D) Akses jarak jauh yang lebih aman (terowongan SSH)

Dari laptop Anda:

ssh -L 27017:127.0.0.1:27017 root@YOUR_VPS_IP

Kemudian sambungkan secara lokal:

mongosh "mongodb://myapp_user:PASS@127.0.0.1:27017/myapp?authSource=myapp"

 Cadangan (sederhana dan andal)

MongoDB menyediakan mongodump untuk cadangan logis.

Contoh:

mongodump --archive=/root/mongo-backup.archive --gzip

Pulihkan:

mongorestore --archive=/root/mongo-backup.archive --gzip

 Pemeriksaan umum (ketika sesuatu gagal)

sudo journalctl -u mongod --no-pager -n 200
sudo ss -lntp | grep 27017
mongod --version
15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai