MongoDB Nedir?
MongoDb, Dünya’da en çok kullanılan ve en çok ilgi gösterilen Döküman (document-based) tabanlı açık kaynak bir NoSql veritabanıdır. Diğer NoSql veritabanları gibi esnek bir yapıya sahiptir. Verileri JSON tipinde dökümanlarda saklamaktadır. MongoDb ayrıca yüksek kullanılabilirlik (High Availability) ve ölçeklenebilirlik sağlar (scalability). Yazımda size basitçe nasıl standalone MongoDb kurulur bunu anlatacağım.
StackOverflow anketine göre, en çok “istenilen” veritabanı.
Gerekli Kaynaklar:
- 1 Tane Ubuntu 20.04 server.
- Minimum 4 GB RAM – 2 core CPU
Ekstra:
- MongoDb’ye dışardan erişmek istiyorsanız, serverda default MongoDb portu olan 27017 portu açık olmalıdır.
MongoDb Kurulumu
MongoDb GPG anahtarını almak için aşağıdaki komutu kullanın.
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
Bu komut size OK dönmeli.
Not: Eğer bu size bir error dönüyorsa, aşağıdaki komutu çalıştırıp tekrar yukarıdaki komutu denemelisiniz.
sudo apt-get install gnupg
Daha sonra source için list file oluşturmalısınız:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
List file oluşturulduktan sonra, local package databesini reload etmelisiniz:
sudo apt-get update
Bu commandden sonra mongo kuruluma hazır, en son sürümü yüklemek için:
sudo apt-get install -y mongodb-org
Ancak spesifik versiyon, diyelimki 6.0.3 versiyonu yüklemek istiyorsanız:
sudo apt-get install -y mongodb-org=6.0.3 mongodb-org-database=6.0.3 mongodb-org-server=6.0.3 mongodb-org-mongos=6.0.3 mongodb-org-tools=6.0.3
Opsiyonel: Eğer her apt-get upgarde durumunda MongoDb’nin versiyonunun yükseltilmesini istemiyorsanız, aşağıdaki commandleri çalıştırmalısınız:
echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-database hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-mongosh hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections
Not: MongoDb Kurulduğunda default olarak log dosyaları /var/log/mongodb, data directory ise /var/lib/mongodb altında tutulur. Kurulum esnasında mongodb userı oluşturulur ve yetkiler bu usera verilir.
MongoDb kurulduktan sonra, sıra mongod servisini çalıştırmaya geldi, bunu çalıştırmak, MongoDb’yi hazır hale getirecektir.
sudo systemctl start mongod
Bununla beraber mongod servisinizi kontrol etmek istiyorsanız:
sudo systemctl status mongod
Sistem her tekrar başlatıldığında mongod servisinin çalışmasını istiyorsanız, aşağıdaki commandi çalıştırın:
sudo systemctl enable mongod
Tebrikler! MongoDb kurdunuz. MongoDb ile beraber MongoDb cli tool’u olan mongosh’da yüklenecektir. Hemen mongosh commandini çalıştırıp MongoDb’ye girebilirsiniz:
mongosh
Ekstra Değinilmesi Gerekenler
Localhost Exception: Herhangi bir user oluşturmadığınız sürece, MongoDb’ye localden, user olmadan authenticate olabilirsiniz.
Aşağıda bir kaç basit MongoDb commandleri var, lütfen inceleyin:
Database oluşturmak için, ilk önce belirtilen ve var olmayan db’ye insert yapmanız gerekli:
db.linuxpedi.insert({"name":"MertYavuz"})
Aşağıdaki commandle, databaseleri görebilirsiniz:
show dbs;
MongoDb’de kendinizi geliştirebileceğiniz ve resmi akedemisi olan https://learn.mongodb.com kesinlikle bakmanızı öneririm.
Son olarak, Eğer beklenmeyen bir hatayla karşılasırsanız ya da feedback vermek isterseniz, lütfen mail atmaktan çekinmeyin.