Ubuntu 24.04'te MongoDB Nasıl Kurulur


Ubuntu 24.04 (Noble Numbat), herhangi bir desteklenen donanım üzerinde üretim kullanımı için resmi olarak indirilebilir ve kurulabilir durumda. Bu NoSQL veritabanı türü, yüksek ölçeklenebilirlik ve esneklik için tasarlanmıştır. MongoDB, verilerini JSON benzeri belge yapısında depolar. Bu, veriler karmaşık yapılar içerse bile üzerinde işlem yapmayı kolaylaştırır. MongoDB'nin esnek veri formatı, çeşitli programlama dilleri üzerinde çalışan geliştiriciler için çekicidir.

Nihai Ubuntu Masaüstü Kılavuzu

Ubuntu'yu bir profesyonel gibi keşfedin - güzel masaüstü özelleştirmelerinden güçlü terminal otomasyonuna kadar. Geliştiriciler, sistem yöneticileri ve çalışma alanlarının tam kontrolünü isteyen ileri kullanıcılar için mükemmeldir.

MongoDB'nin bazı popüler kullanım alanları şunlardır:

  • Mobil uygulama geliştirmede
  • Nesnelerin İnterneti'nde analitik için veri depolama
  • Bazı İçerik Yönetim Sistemleri varsayılan olarak MongoDB kullanır
  • Sosyal medya uygulamalarının geliştirilmesi
  • Gerçek zamanlı veri analitiği ve işleme için
  • E-ticaret platformlarının kurulması
  • Herhangi bir yarı yapılandırılmış ve yapılandırılmamış veriyi depolarken

Bu makalede Ubuntu 24.04 Linux sistemine MongoDB kurulumu yapacağız.

Sistemi Güncelle ve Depo Ekle

Kurulum işlemine, işletim sistemi depo listemizi güncelleyerek başlıyoruz.

sudo apt update

İsterseniz, sistemdeki tüm yüklü paketler güncellenebilir.

sudo apt upgrade -y

Sistemde yapılan herhangi bir çekirdek güncellemesinden sonra yeniden başlatma gerekir.

[ -e /var/run/reboot-required ] && sudo reboot

Sistem yeniden başlatılmışsa çevrimiçi olmasını bekleyin, ardından tekrar giriş yapın ve MongoDB depo anahtarını içe aktarın.

sudo apt install gnupg curl
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \
   sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \
   --dearmor

Ubuntu sisteminize MongoDB deposunu ekleyin.

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list

Sisteminizin yerel paket veritabanını güncellemek için aşağıdaki komutu çalıştırın:

sudo apt update

Baskı hatası olmadığını onaylayın.

Hit:1 https://mirror.hetzner.com/ubuntu/packages noble InRelease
Ign:2 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 InRelease
Hit:3 https://mirror.hetzner.com/ubuntu/packages noble-updates InRelease
Hit:4 https://mirror.hetzner.com/ubuntu/packages noble-backports InRelease
Hit:5 https://mirror.hetzner.com/ubuntu/security noble-security InRelease
Get:6 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 Release [2,090 B]
Get:7 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 Release.gpg [866 B]
Get:8 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0/multiverse amd64 Packages [38.7 kB]
Get:9 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0/multiverse arm64 Packages [37.6 kB]
Fetched 79.2 kB in 2s (41.7 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.

Ubuntu 24.04'te MongoDB Sunucusunu Kurun

Depo eklendikten ve çalıştığı doğrulandıktan sonra, Ubuntu 24.04 üzerinde MongoDB Sunucusu kurulumu yapılabilir. Etkin terminal oturumunuzdayken, aşağıdaki komutları çalıştırın.

sudo apt -y install mongodb-org

Yazılım sürümünü kontrol ederek kurulumu başarıyla gerçekleştirildiğini doğrulayın.

$ mongod --version
db version v7.0.9
Build Info: {
    "version": "7.0.9",
    "gitVersion": "3ff3a3925c36ed277cf5eafca5495f2e3728dd67",
    "openSSLVersion": "OpenSSL 3.0.13 30 Jan 2024",
    "modules": [],
    "allocator": "tcmalloc",
    "environment": {
        "distmod": "ubuntu2204",
        "distarch": "x86_64",
        "target_arch": "x86_64"
    }
}

MongoDB veri dizini /var/lib/mongodb'dir ve günlükler /var/log/mongodb dizini içinde saklanır.

Yapılandırmalar aşağıdaki dosyada özelleştirilebilir.

sudo vim /etc/mongod.conf

Servis aşağıdaki komutlar çalıştırılarak manuel olarak başlatılabilir.

sudo systemctl start mongod

Yeniden başlatmak için kullanın:

sudo systemctl restart mongod

Ve servisi durdurmak için şunu çalıştırın:

sudo systemctl stop mongod

MongoDB servisinin sistem yeniden başlatıldığında otomatik olarak başlamasını sağlamak için şunu çalıştırın:

sudo systemctl enable mongod

Hata günlüklerini kontrol etmek için şunu kullanın:

sudo tail -f /var/log/mongodb/mongod.log

MongoDB Sunucusunu Kullanmak

MongoDB kullanmaya mongosh oturumunu başlatarak başlayın

# mongosh
Current Mongosh Log ID:	663406e5292bc66b3a2202d7
Connecting to:		mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+2.2.5
Using MongoDB:		7.0.9
Using Mongosh:		2.2.5

For mongosh info see: https://docs.mongodb.com/mongodb-shell/


To help improve our products, anonymous usage data is collected and sent to MongoDB periodically (https://www.mongodb.com/legal/privacy-policy).
You can opt-out by running the disableTelemetry() command.

------
   The server generated these startup warnings when booting
   2024-05-02T21:33:22.361+00:00: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine. See http://dochub.mongodb.org/core/prodnotes-filesystem
   2024-05-02T21:33:23.055+00:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted
------

test>

Gelin Movies adında örnek bir veritabanı oluşturalım

test> use Movies
switched to db Movies
Movies>

Şu anda seçili veritabanını kontrol et

Movies> db
Movies

MongoDB, yalnızca içine ilk veriyi kaydettiğinizde bir veritabanı oluşturur. Veri bir koleksiyon veya bir belge olabilir.

Veritabanına Veri Eklemek

Veritabanınıza bir belgeyi db.collection.insert() komutunu kullanarak ekleyebilirsiniz.

Movies> db.movies.insert({name: "Dune: Part Two", year: 2024})
{
  acknowledged: true,
  insertedIds: { '0': ObjectId('66340a3690f41b1d482202da') }
}

Movies> db.movies.insert({name: "Challengers", year: 2024})
{
  acknowledged: true,
  insertedIds: { '0': ObjectId('66340a9b90f41b1d482202db') }
}

Tüm oluşturulan veritabanlarını listelemek için aşağıdaki komutu kullanın:

Movies> show dbs
Movies  152.00 KiB
admin    40.00 KiB
config   92.00 KiB
local    40.00 KiB

Mevcut bir veritabanını silmek için db.dropDatabase() komutunu kullanın.

Movies>  show dbs
Movies  152.00 KiB
admin    40.00 KiB
config   92.00 KiB
local    40.00 KiB

test> use Movies
switched to db Movies
Movies>

Movies> db.dropDatabase()
{ ok: 1, dropped: 'Movies' }

Şimdi veritabanları listesini kontrol edin.

Movies> show dbs
admin   40.00 KiB
config  92.00 KiB
local   40.00 KiB

Veritabanının silindiğini doğrulayabiliriz.

Referans belgeleri:

  • MongoDB Temelleri
  • MongoDB Belgeleri