MongoDB adalah database dokumen sumber terbuka dan gratis. Ini diklasifikasikan sebagai database NoSQL yang berbeda dari database SQL berbasis tabel tradisional seperti MySQL dan PostgreSQL.
Di MongoDB, data disimpan dalam dokumen seperti JSON yang fleksibel di mana bidang dapat bervariasi dari satu dokumen ke dokumen lainnya. Itu tidak memerlukan skema yang telah ditentukan sebelumnya dan struktur data dapat diubah dari waktu ke waktu.
Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengkonfigurasi MongoDB Community Edition pada server CentOS 7 dari repositori resmi MongoDB.
Prasyarat #
Sebelum melanjutkan tutorial ini, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo.
Menginstal MongoDB #
Pada saat artikel ini ditulis, versi terbaru MongoDB yang tersedia dari repositori resmi MongoDB adalah versi 4.0. Sebelum melanjutkan ke langkah berikutnya, kunjungi bagian Instal di Red Hat dari dokumentasi MongoDB dan periksa apakah ada rilis baru yang tersedia.
Ikuti langkah-langkah di bawah ini untuk menginstal MongoDB versi stabil terbaru di server CentOS Anda :
-
Mengaktifkan repositori MongoDB
Untuk menambahkan repositori MongoDB ke sistem Anda, buka editor teks Anda dan buat file konfigurasi repositori YUM baru bernama
/etc/yum.repos.d/mongodb-org.repomongodb-org.repo
di dalam/etc/yum.repos.d/
direktori:[mongodb-org-4.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
Jika Anda ingin menginstal MongoDB versi lama, ganti setiap instance
4.0
dengan versi pilihan Anda. -
Menginstal MongoDB
Sekarang setelah repositori diaktifkan, Anda dapat menginstal
mongodb-org
meta-paket menggunakan utilitas yum:sudo yum install mongodb-org
Selama instalasi, yum akan meminta Anda untuk mengimpor kunci GPG MongoDB. Ketik
y
dan tekanEnter
.Paket-paket berikut akan diinstal pada sistem Anda sebagai bagian dari
mongodb-org
paket:mongodb-org-server
-mongod
daemon, serta skrip dan konfigurasi init yang sesuai.mongodb-org-mongos
-mongos
daemon.mongodb-org-shell
- Shell mongo, antarmuka JavaScript interaktif ke MongoDB, digunakan untuk melakukan tugas administratif seperti baris perintah.mongodb-org-tools
- Berisi beberapa alat MongoDB untuk mengimpor dan mengekspor data, statistik, serta utilitas lainnya.
-
Memulai MongoDB
Setelah instalasi selesai, jalankan daemon MongoDB dan aktifkan untuk memulai saat boot dengan mengetik:
sudo systemctl start mongod
sudo systemctl enable mongod
-
Memverifikasi Instalasi MongoDB
Untuk memverifikasi instalasi, kami akan terhubung ke server database MongoDB menggunakan
mongos
alat dan cetak versi server:mongos
Setelah Anda berada di dalam shell MongoDB ketik perintah berikut yang akan menampilkan versi MongoDB:
db.version()
Outputnya akan terlihat seperti berikut:
4.0.1
Konfigurasi MongoDB #
Anda dapat mengonfigurasi instans MongoDB Anda dengan mengedit /etc/mongod.conf
file konfigurasi yang ditulis dalam YAML.
Pengaturan konfigurasi default sudah cukup dalam banyak kasus. Namun, untuk lingkungan produksi, sebaiknya batalkan komentar pada bagian keamanan dan aktifkan otorisasi seperti yang ditunjukkan di bawah ini:
/etc/mongod.confsecurity:
authorization: enabled
authorization
opsi mengaktifkan Kontrol Akses Berbasis Peran (RBAC) yang mengatur akses pengguna ke sumber daya dan operasi basis data. Jika opsi ini dinonaktifkan, setiap pengguna akan memiliki akses ke basis data apa pun dan dapat melakukan tindakan apa pun.
Setelah membuat perubahan pada file konfigurasi MongoDB, restart layanan mongod:
sudo systemctl restart mongod
Untuk menemukan informasi lebih lanjut tentang opsi konfigurasi yang tersedia di MongoDB 4.0, kunjungi halaman dokumentasi Opsi File Konfigurasi.
Membuat Pengguna Administratif MongoDB #
Jika Anda mengaktifkan autentikasi MongoDB, buat satu pengguna MongoDB administratif yang akan Anda gunakan untuk mengakses dan mengelola instans MongoDB Anda.
Pertama akses shell mongo dengan:
mongos
Setelah Anda berada di dalam shell MongoDB ketik perintah berikut untuk terhubung ke admin
basis data:
use admin
switched to db admin
Buat pengguna baru bernama mongoAdmin
dengan userAdminAnyDatabase
peran:
db.createUser(
{
user: "mongoAdmin",
pwd: "changeMe",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
Successfully added user: {
"user" : "mongoAdmin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
Anda dapat memberi nama pengguna MongoDB administratif sesuai keinginan. Keluar dari shell mongo dengan:
quit()
Untuk menguji perubahan, akses mongo shell menggunakan pengguna administratif yang telah Anda buat sebelumnya:
mongo -u mongoAdmin -p --authenticationDatabase admin
use admin
switched to db admin
Sekarang, cetak pengguna dengan:
show users
{
"_id" : "admin.mongoAdmin",
"user" : "mongoAdmin",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
}
Anda juga dapat mencoba mengakses shell mongo tanpa argumen apa pun ( cukup ketik mongos
) dan lihat apakah Anda dapat membuat daftar pengguna menggunakan perintah yang sama seperti di atas.