Ubuntu 18.04 Üzerinde MongoDB Kurulumu – Acemiler için Rehber

Konu veri yönetimine geldiğinde hemen herkesin aklına ilk olarak MySQL gelir. Ancak MySQL, mevcut olan tek veri yönetimi sistemi değildir. Linux bazlı VPS için PostgreSQL, SQLite, Oracle ve MariaDB gibi birçok güçlü veri yönetimi sistemleri bulunmaktadır. İlişkisel veritabanları olmaya ek olarak bu yönetim sistemleri ayrıca SQL dilini kullanırlar. Ancak oldukça fonksiyonel ve verimli olan diğer NoSQL veritabanı yöneticileri de bulunmaktadır. Bunların en popülerlerinden biriyse MongoDB’dir. Bu makalede Ubuntu 18.04 üzerinde MongoDB kurulumu nasıl yapılır anlatacağız.

MongoDB nedir?

MongoDB en popüler NoSQL veritabanı yöneticilerinden biridir. Genel olarak BSON gibi biçimlendirilmiş belgelerde veri kaydedebileceğiniz uygulamalar için kullanılır.

Bu SQL çeşitleri gibi sorgularda veri kaydetmek yerine belgelerde kaydetmek anlamına gelir.

NoSQL tipindeki veritabanlarında belgelerin tanımlanmış bir şeması yoktur. Bunun karmakarışık bir veritabanında sonuçlanacağını düşünebilirsiniz ancak durum tam aksidir. Böyle bir sistemde “alanlar” ve veriler basitleştirilmiştir, böylece yönetmeleri daha kolaydır ve daha hızlı depolanırlar.

Buna ek olarak, MongoDB ölçeklenebilirliğin devasa olduğu ortamlarda popülerdir. MongoDB ile verinin ölçeklenebilmesine izin veren replikasyon tekniklerini hızlıca uygulayabilirsiniz. Yarı yapılandırılmış veri depolamayı gerektiren bütün uygulamalar MongoDB’yi kullanabilirler.

Ubuntu 18.04 Üzerinde MongoDB Kurulumu

MongoDB oldukça tanınan bir uygulama olsa da Ubuntu depolarında resmi olarak bulunmaz, bu yüzden elle eklemeniz gerekmektedir. Ancak bu büyük bir avantajdır çünkü kurulum ve uygulama güncellemeleri daha kolay hale gelir. İlk olarak SSH kullanarak sunucunuza bağlanın:

ssh kullaniciniz@sunucunuz

Eğer Ubuntu 18.04 kullanıyorsanız terminali açın ve indirilmiş paketleri riske atmamak için MongoDB deposundan PGP anahtarını ekleyin:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

Bundan sonra ise MongoDB deposunu sorunsuz biçimde ekleyebilirrsiniz. Bunu yapmak için ise bu komutu çalıştırın:

echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list

Şimdi ise bütün depoları senkronize etmek için APT komutunu yenileyin:

sudo apt update

Şimdi de APT’yi kullanarak MongoDB’yi yükleyin:

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

Kurulumun sonunda, MongoDB hizmetini etkinleştirin ve başlatın. Bununla beraber artık MongoDB’yi kullanmaya başlayabileceksiniz.

sudo systemctl enable mongodb
sudo systemctl start mongodb

Son olarak hizmetin durumunu kontrol edin:

sudo systemctl status mongodb

Artık Ubuntu üzerinde MongoDB kurulumu nasıl yapılır biliyorsunuz ve MongoDB de kullanılmaya hazır.

MongoDB Kullanımı

Artık MongoDB’nin temellerini öğrenebiliriz!

MongoDB yapılandırma dosyasının /etc/mongod.conf olduğunu unutmayın. Bu dosyaya yapacağınız herhangi bir değişiklik uygulamanın yeniden başlatılmasını gerektirecektir.

/var/log/mongodb dizini uygulama kayıtlarının konumlandıralacağı yerdir ve kurulum sırasında oluşturulmuştur.

Son olaraksa MongoDB’nin varsayılan portu 27017’dir.

Yeni Bir Veritabanı Oluşturma

MongoDB admin isimli tek bir veritabanıyla gelir. Projeniz için iyi bir iş akışından emin olmak için iyi bir iş akışından emin olmak için daha fazla veritabanı oluşturmanız gerekecektir. Bunu yapmak içinse önce MongoDB konsoluna gidin:

mongo

Konsola girdikten sonra komut kullanımıyla bir veritabanı yaratabilirsiniz. Unutmayın ki SQL dilinin aksine “create databases” komutu veya cümlesi yoktur. Tek yapmanız use komutunu kullanmaktır. Eğer veritabanı bulunuyorsa kullanılabilir, aksi taktirde ise oluşturulacaktır.

use [veritabani_adi]

İşte bu kadar basit.

Yeni Bir Kullanıcı Oluşturma

MongoDB kurulumu ile varsayılan olarak bir yönetici hesabı gelmemektedir. Bunun yerine her bir veritabanı için farklı kullanıcılar yaratmanız gerekir. Ancak, her veritabanında belirli izinlerle kullanıcılar yaratmalısınız.

MongoDB konsolua girdikten sonra arayüz tarafından sağlanan yardıma erişebilirsiniz.

help

Bu sekmede db.createUser() fonksiyonunu görebilirsiniz.  Bu fonksiyonun içinde kullanıcı adını, şifreyi, veritabanını ve sahip olacağı rolü belirtin.

db.createUser fonksiyonu tıpkı MongoDB’deki diğer her şey gibi parametrelerini JSON’dan alır. Yani, yeni oluşturulmuş veritabanında yeni bir kullanıcı oluşturmak için bu komutu çalıştırın:

db.createUser(
{
user: "gokhan",
pwd: "gokhan123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)

dbAdmindbUserread ve diğerleri gibi birçok rol mevcuttur. Bu yüzden hangi durumda hangisini kullanmanın doğru olacağını öğrenmek için resmi MongoDB kılavuzunu ziyaret etmenizi tavsiye ederiz.

Bu komutla şu ana kadar oluşturulmuş bütün kullanıcıları görebilirsiniz:

show users

İşlemi test etmek için MongoDB konsolundan çıkan ve aşağıdaki komutları çalıştırın:

exit
mongo -u [kullanici] -p [sifre] [host:port]/[veritabani]

Host ve port’a uzaktan yapılan MongoDB bağlantıyı sıradaki kısımda anlatacağız.

MongoDB’deki Uzaktan Doğrulamayı Etkinleştirme

Varsayılan olarak MongoDB kurulumunuzda yerel makineden bütün kayıtlar onaylanır. Uygulama gelişirken hiçbir sorun olmaz.

Ancak, doğrulamayı etkinleştirmeniz gerektiğinden uygulama hazır olduğunda ve görevlendirmeniz gerektiğinde sorunlarla karşılaşabilirsiniz.

Sorun yaşamamak için /etc/mongodb.conf dosyasını açın ve bindIP:127.0.0.1 yazan satırı yorumlayın.

sudo nano /etc/mongodb.conf

Şimdiyse hizmeti yeniden başlatın. Aynı dosyada MongoDB’nin varsayılan portunu düzenleyebilirsiniz.

sudo systemctl restart mongodb

Şimdi MongoDB’de doğrulama olmadan sadece yerel kullanıcılar giriş yapabilir. Eğer sunucularınıza sıradışı bir erişim sağlanırsa veya güvenliği artırmak isterseniz, bunu kaldırabilirsiniz.

Sonuç

Farklı veri ihtiyaçlarına uygun olarak birçok farklı uygulama bulunmaktadır. Bu yüzden MongoDB gibi NoSQL alternatifler ortaya çıkmıştır.

MongoDB sağlamlığı, hızı ve ölçeklenebilirliği sayesinde varolan en önemli veritabanı yöneticilerinden biridir.

Bu makalede Ubuntu 18.04 üzerinde MongoDB kurulumu yapmayı öğrendiniz ve bu veritabanı yöneticisini kullanmaya dair ilk adımlarınızı attınız. Her zamanki gibi yorumlarınızı ve düşüncelerinizi aşağıdaki yorumlar kısmında bizimle paylaşın!

 

Author
Yazar

Gökhan O.

Gökhan Hostinger’da YouTube Takım Lideri olarak çalışmakta. WordPress hakkındaki tecrübe ve bilgisini bu blogda paylaşıyor. Hostinger’ın adını YouTube içeriği üzerinden duyurmayı kendine görev edinmiştir. Hobileri arasında oyun oynamak ve futbol maçları izlemek vardır.