Ubuntu 20.04’te MongoDB Nasıl Kurulur

Ubuntu’nun resmi paket depoları, MongoDB’nin kararlı bir sürümünü içerir. Ancak, bu yazı itibariyle, varsayılan Ubuntu depolarında bulunan MongoDB sürümü şu şekildedir:3.6, en son kararlı sürüm ise4.4.
Bu yazılımın en son sürümünü elde etmek için MongoDB’nin özel paket havuzunu APT kaynaklarınıza eklemelisiniz. mongodb-orgArdından, her zaman MongoDB’nin en son sürümüne işaret eden bir meta paketi kurabileceksiniz .
Başlamak için, aşağıdaki komutu çalıştırarak MongoDB’nin en son kararlı sürümü için genel GPG anahtarını içe aktarın. MongoDB’nin başka bir sürümünü kullanmayı düşünüyorsanız4.4, yüklemek istediğiniz sürümle hizalamak için bu komutun URL bölümünü değiştirdiğinizden emin olun :
curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
cURL, veri aktarımı için kullanılan birçok işletim sisteminde bulunan bir komut satırı aracıdır. Kendisine iletilen URL’de depolanan verileri okur ve içeriği sistemin çıktısına yazdırır. Aşağıdaki örnekte, cURL, GPG anahtar dosyasının içeriğini yazdırır ve ardından bunu aşağıdaki sudo apt-key add -komuta aktarır, böylece GPG anahtarını güvenilir anahtarlar listenize ekler.
Ayrıca, bu curlkomutun -fsSL, birlikte esasen cURL’ye sessizce başarısız olmasını söyleyen seçenekleri kullandığına dikkat edin. Bu, herhangi bir nedenle cURL’nin GPG sunucusuyla iletişim kuramaması veya GPG sunucusunun çalışmaması durumunda, ortaya çıkan hata kodunu yanlışlıkla güvenilir anahtarlar listenize eklemeyeceği anlamına gelir.
OK Anahtar başarıyla eklendiyse bu komut geri dönecektir :
OutputOK
Anahtarın doğru eklendiğini tekrar kontrol etmek isterseniz, bunu aşağıdaki komutla yapabilirsiniz:
apt-key list
Bu, MongoDB anahtarını çıktıda bir yere döndürür:
Output/etc/apt/trusted.gpg
--------------------
pub rsa4096 2019-05-28 [SC] [expires: 2024-05-26]
2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
uid [ unknown] MongoDB 4.4 Release Signing Key <packaging@mongodb.com>
. . .
mongodb-orgBu noktada, APT kurulumunuz , MongoDB’nin en son sürümünü kurmak için ihtiyacınız olan paketi nerede bulacağınızı hala bilmiyor .
Sunucunuzda APT’nin indirmek ve kurmak için çevrimiçi paket kaynakları aradığı iki yer vardır: sources.listdosya ve sources.list.ddizin. sources.listAPT verilerinin aktif kaynaklarını listeleyen, her satıra bir kaynak ve en çok tercih edilen kaynakların ilk sırada yer aldığı bir dosyadır. Dizin, bu tür girişleri ayrı dosyalar olarak sources.list.deklemenize izin verir .sources.list
sources.list.dadlı dizinde bir dosya oluşturan aşağıdaki komutu çalıştırın mongodb-org-4.4.list. Bu dosyadaki tek içerik tek satırlık bir okumadır deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
Bu tek satır, APT’ye kaynağın ne olduğu ve nerede bulunacağı hakkında bilmesi gereken her şeyi anlatır:
deb: Bu, kaynak girişinin normal bir Debian mimarisine atıfta bulunduğu anlamına gelir. Diğer durumlarda, satırın bu kısmı okunabilirdeb-src, bu da kaynak girişinin bir Debian dağıtımının kaynak kodunu temsil ettiği anlamına gelir.[ arch=amd64,arm64 ]: Bu, APT verilerinin hangi mimarilere indirilmesi gerektiğini belirtir. Bu durumda,amd64vearm64mimarileri belirtir.https://repo.mongodb.org/apt/ubuntu: Bu, APT verilerinin bulunabileceği konumu temsil eden bir URI’dir. Bu durumda URI, resmi MongoDB deposunun bulunduğu HTTPS adresine işaret eder.focal/mongodb-org/4.4: Ubuntu depoları birkaç farklı sürüm içerebilir.4.4Bu ,mongodb-orgpaketin yalnızca sürümünün Ubuntu sürümü için mevcut olmasını istediğinizi belirtirfocal(“Focal Fossa”, Ubuntu 20.04’ün kod adıdır).multiverse: Bu bölüm, APT’yi dört ana Ubuntu deposundan birine işaret eder. Bu durumda,multiversedepoya işaret ediyor .
Bu komutu çalıştırdıktan sonra, APT’nin paketi nerede bulacağını bilmesi için sunucunuzun yerel paket dizinini güncelleyin mongodb-org:
sudo apt update
Bunu takiben MongoDB’yi kurabilirsiniz:
sudo apt install mongodb-org
İstendiğinde, paketi yüklemek istediğinizi onaylamak için Yve ardından düğmelerine basın.ENTER
Komut bittiğinde, sisteminize MongoDB kurulacaktır. Ancak henüz kullanıma hazır değil. Ardından, MongoDB’yi başlatacak ve düzgün çalıştığını onaylayacaksınız.
Adım 2 — MongoDB Hizmetini Başlatma ve Veritabanını Test Etme
Önceki adımda açıklanan yükleme işlemi, MongoDB’yi tarafından kontrol edilen bir arka plan programı olarak çalışacak şekilde otomatik olarak yapılandırır , yani çeşitli komutları systemdkullanarak MongoDB’yi yönetebilirsiniz . systemctlAncak, bu yükleme yordamı hizmeti otomatik olarak başlatmaz.
systemctlMongoDB hizmetini başlatmak için aşağıdaki komutu çalıştırın :
sudo systemctl start mongod.service
Ardından hizmetin durumunu kontrol edin. .serviceBu komutun hizmet dosyası tanımına dahil olmadığına dikkat edin . systemctlzaten mevcut değilse otomatik olarak ilettiğiniz bağımsız değişkene bu soneki ekler, bu nedenle onu eklemenize gerek yoktur:
sudo systemctl status mongod
Bu komut, hizmetin çalışır durumda olduğunu belirten aşağıdaki gibi bir çıktı döndürür:
Output● mongod.service - MongoDB Database Server
Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled)
Active: active (running) since Tue 2020-06-09 12:57:06 UTC; 2s ago
Docs: https://docs.mongodb.org/manual
Main PID: 37128 (mongod)
Memory: 64.8M
CGroup: /system.slice/mongod.service
└─37128 /usr/bin/mongod --config /etc/mongod.conf
Hizmetin beklendiği gibi çalıştığını onayladıktan sonra MongoDB hizmetinin açılışta başlamasını sağlayın:
sudo systemctl enable mongod
Ayrıca, veritabanı sunucusuna bağlanarak ve bir tanılama komutu yürüterek veritabanının çalışır durumda olduğunu doğrulayabilirsiniz. Aşağıdaki komut veritabanına bağlanacak ve geçerli sürümünü, sunucu adresini ve bağlantı noktasını gösterecektir. connectionStatusAyrıca MongoDB’nin dahili komutunun sonucunu da döndürür :
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
connectionStatusveritabanı bağlantısının durumunu kontrol edecek ve döndürecektir. 1Yanıttaki alan için bir değer ok, sunucunun beklendiği gibi çalıştığını gösterir:
OutputMongoDB shell version v4.4.0
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("1dc7d67a-0af5-4394-b9c4-8a6db3ff7e64") }
MongoDB server version: 4.4.0
{
"authInfo" : {
"authenticatedUsers" : [ ],
"authenticatedUserRoles" : [ ]
},
"ok" : 1
}
Ayrıca, veritabanının, localhost’u temsil eden yerel geri döngü adresi olan 27017on bağlantı noktasında çalıştığını unutmayın . Bu, MongoDB’nin varsayılan bağlantı noktası numarasıdır.127.0.0.1
Ardından, MongoDB sunucu eşgörünümünün systemd.
3. Adım — MongoDB Hizmetini Yönetme
Daha önce belirtildiği gibi, Adım 1’de açıklanan yükleme işlemi, MongoDB’yi bir systemdhizmet olarak çalışacak şekilde yapılandırır. systemctlBu, onu diğer Ubuntu sistem hizmetlerinde olduğu gibi standart komutları kullanarak yönetebileceğiniz anlamına gelir .
Daha önce belirtildiği gibi, systemctl statuskomut MongoDB hizmetinin durumunu kontrol eder:
sudo systemctl status mongod
Hizmeti istediğiniz zaman şunu yazarak durdurabilirsiniz:
sudo systemctl stop mongod
Durdurulduğunda hizmeti başlatmak için şunu çalıştırın:
sudo systemctl start mongod
Ayrıca, zaten çalışırken sunucuyu yeniden başlatabilirsiniz:
sudo systemctl restart mongod
2. Adımda, MongoDB’nin sunucuyla otomatik olarak başlamasını sağladınız. Bu otomatik başlatmayı devre dışı bırakmak isterseniz, şunu yazın:
sudo systemctl disable mongod
Ardından, açılışta başlamasını yeniden etkinleştirmek için enablekomutu tekrar çalıştırın:
sudo systemctl enable mongod



