MongoDB adalah sistem database berorientasi dokumen open-source dan lintas platform yang ditulis dalam C++. Ini menyimpan data dalam kumpulan dokumen fleksibel seperti JSON dan digunakan untuk membuat situs web dan aplikasi yang kuat. Karena skalabilitas dan kinerjanya yang tinggi, ia digunakan untuk membangun aplikasi modern yang memerlukan database yang kuat, kritis, dan ketersediaan tinggi.
Dalam tutorial ini, kami akan menjelaskan cara menginstal dan menggunakan sistem database MongoDB di server Ubuntu 20.04.
Prasyarat
- Server yang menjalankan Ubuntu 20.04.
- Kata sandi root dikonfigurasi di server Anda.
Instal MongoDB
Secara default, versi terbaru MongoDB tidak tersedia di repositori default Ubuntu 20.04. Jadi, Anda perlu menambahkan repositori MongoDB resmi di sistem Anda.
Pertama, instal paket Gnupg dengan perintah berikut:
apt-get install gnupg -y
Selanjutnya, unduh dan tambahkan kunci GPG MongoDB dengan perintah berikut:
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | apt-key add -
Selanjutnya, tambahkan repositori MongoDB dengan perintah berikut:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.2.list
Selanjutnya, perbarui repositori dan instal MongoDB dengan perintah berikut:
apt-get update -y
apt-get install mongodb-org -y
Setelah instalasi selesai, mulai layanan MongoDB dan aktifkan untuk memulai saat reboot dengan perintah berikut:
systemctl start mongod
systemctl enable mongod
Anda sekarang dapat memeriksa status layanan MongoDB dengan perintah berikut:
systemctl status mongod
Anda akan mendapatkan output berikut:
? mongod.service - MongoDB Database Server Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-05-15 05:30:39 UTC; 18s ago Docs: https://docs.mongodb.org/manual Main PID: 106996 (mongod) Memory: 76.0M CGroup: /system.slice/mongod.service ??106996 /usr/bin/mongod --config /etc/mongod.conf May 15 05:30:39 ubuntu2004 systemd[1]: Started MongoDB Database Server. May 15 05:30:48 ubuntu2004 systemd[1]: /lib/systemd/system/mongod.service:11: PIDFile= references a path below legacy directory /var/run/, upd> lines 1-11/11 (END)
Anda juga dapat memverifikasi versi MongoDB dan alamat server menggunakan perintah berikut:
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Anda akan mendapatkan output berikut:
MongoDB shell version v4.2.6 connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("e1575445-f441-4b30-a5d7-4cf68852e68f") } MongoDB server version: 4.2.6 { "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1 }
Konfigurasi MongoDB
File konfigurasi default MongoDB terletak di /etc/mongod.conf. Secara default, setiap pengguna akan memiliki akses ke semua database dan melakukan tindakan apa pun. Untuk lingkungan produksi, disarankan untuk mengaktifkan autentikasi MongoDB.
Anda dapat melakukannya dengan mengedit file /etc/mongod.conf:
nano /etc/mongod.conf
Tambahkan baris berikut:
security: authorization: enabled
Simpan dan tutup file kemudian restart layanan MongoDB untuk menerapkan perubahan:
systemctl restart mongod
Buat Pengguna Admin MongoDB
Setelah mengaktifkan otentikasi MongoDB, Anda perlu membuat pengguna admin untuk mengakses dan mengelola database MongoDB.
Pertama, akses konsol MongoDB dengan perintah berikut:
mongo
Anda akan melihat output berikut:
MongoDB shell version v4.2.6 connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("9ee0ea0c-cf95-4b83-9e88-00dc3a61e0a6") } MongoDB server version: 4.2.6 Welcome to the MongoDB shell. For interactive help, type "help". For more comprehensive documentation, see http://docs.mongodb.org/ Questions? Try the support group http://groups.google.com/group/mongodb-user
Selanjutnya, sambungkan ke database admin dengan perintah berikut:
> use admin
Anda akan melihat output berikut:
switched to db admin
Selanjutnya, buat pengguna admin baru dan atur kata sandi dengan perintah berikut:
> db.createUser( { user: "admin", pwd: "password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )
Anda akan mendapatkan output berikut:
Successfully added user: { "user" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] }
Selanjutnya, keluar dari konsol MongoDB dengan perintah berikut:
> quit()
Verifikasi Otentikasi MongoDB
Pada titik ini, MongoDB dikonfigurasi dengan otentikasi.
Sekarang, coba sambungkan ke MongoDB menggunakan pengguna yang telah Anda buat sebelumnya:
mongo -u admin -p --authenticationDatabase admin
Anda akan diminta untuk memberikan kata sandi seperti yang ditunjukkan di bawah ini:
MongoDB shell version v4.2.6 Enter password:
Berikan kata sandi admin Anda dan tekan Enter. Anda akan melihat output berikut:
connecting to: mongodb://127.0.0.1:27017/?authSource=admin&compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("00d6d1eb-d1c3-41ea-89c7-d46ec6d17bee") } MongoDB server version: 4.2.6
Sekarang, ubah database menjadi admin dengan perintah berikut:
> use admin
Anda akan melihat output berikut:
switched to db admin
Sekarang, daftarkan pengguna dengan perintah berikut:
> show users
Anda akan mendapatkan output berikut:
{ "_id" : "admin.admin", "userId" : UUID("65907484-9d67-4e6e-bb88-a6666310e963"), "user" : "admin", "db" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ], "mechanisms" : [ "SCRAM-SHA-1", "SCRAM-SHA-256" ] } >
Kesimpulan
Dalam panduan di atas, Anda mempelajari cara menginstal dan mengkonfigurasi MongoDB di server Ubuntu 20.04. Untuk informasi lebih lanjut, Anda dapat mengunjungi dokumentasi MongoDB di Mongo Doc.