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-org
Ardı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 curl
komutun -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-org
Bu 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.list
dosya ve sources.list.d
dizin. sources.list
APT 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.d
eklemenize izin verir .sources.list
sources.list.d
adlı 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,amd64
vearm64
mimarileri 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.4
Bu ,mongodb-org
paketin 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,multiverse
depoya 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 Y
ve 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ı systemd
kullanarak MongoDB’yi yönetebilirsiniz . systemctl
Ancak, bu yükleme yordamı hizmeti otomatik olarak başlatmaz.
systemctl
MongoDB hizmetini başlatmak için aşağıdaki komutu çalıştırın :
sudo systemctl start mongod.service
Ardından hizmetin durumunu kontrol edin. .service
Bu komutun hizmet dosyası tanımına dahil olmadığına dikkat edin . systemctl
zaten 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. connectionStatus
Ayrıca MongoDB’nin dahili komutunun sonucunu da döndürür :
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
connectionStatus
veritabanı bağlantısının durumunu kontrol edecek ve döndürecektir. 1
Yanı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 27017
on 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 systemd
hizmet olarak çalışacak şekilde yapılandırır. systemctl
Bu, onu diğer Ubuntu sistem hizmetlerinde olduğu gibi standart komutları kullanarak yönetebileceğiniz anlamına gelir .
Daha önce belirtildiği gibi, systemctl status
komut 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 enable
komutu tekrar çalıştırın:
sudo systemctl enable mongod