MongoDB, birçok modern web uygulamasında kullanılan açık kaynaklı bir veritabanıdır. NoSQL veritabanı olarak sınıflandırılır. Verileri katı bir şemaya göre tablolarda saklayan ilişkisel veritabanlarından farklı olarak MongoDB, verileri esnek şemaya sahip belgelerde depolar. Uygulamalar daha sonra bu bilgileri bir JSON biçiminde alır.
İşletim Sistemini Güncelle
Paketlerin güncel olduğundan emin olmak için Debian 11 işletim sisteminizi güncelleyin:
sudo apt update && sudo apt upgrade -y
Bağımlılıkları Yükle
Kurulum için gerekli paketleri aşağıdaki komutla kurun:
sudo apt install curl apt-transport-https software-properties-common ca-certificates dirmngr gnupg2
MongoDB GPG Anahtarını İçe Aktar
Önce MongDB genel GPG anahtarını aşağıdaki gibi içe aktarmamız gerekiyor:
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
Yürütülen komutun çıktısı “Tamam” olmalıdır.
MongoDB 5.0 Deposunu Ekle
MongoDB 5.0 paketleri doğrudan Debian 11’in temel deposundan kurulamaz ve bu NoSQL veritabanının geliştiricileri tarafından sunulan resmi paketi eklememiz gerekiyor:
echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/5.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
Depoyu güncelleyin:
sudo apt update
MongoDB’yi Debian 11’e Yükleyin
Şimdi MongoDB’yi aşağıdaki komutla kuracağız:
sudo apt-get install -y mongodb-org
Varsayılan olarak, MongoDB hizmeti başlatılmaz. MongoDB hizmetini başlatın:
sudo systemctl start mongod
MongoDB’nin gerçekten çalıştığını doğrulayın:
sudo systemctl status mongod
Çıktı:
● mongod.service - MongoDB Database Server
Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2022-05-05 49:02:06 EDT; 9s ago
Docs: https://docs.mongodb.org/manual
Main PID: 6197 (mongod)
Memory: 66.4M
CPU: 974ms
CGroup: /system.slice/mongod.service
└─6197 /usr/bin/mongod --config /etc/mongod.conf
Apr 03 08:02:06 debian systemd[1]: Started MongoDB Database Server.
Kurulu olan MongoDB sürümünü kontrol etmek için.
sudo mongod --version
version v5.0.6
Build Info: {
"version": "5.0.6",
"gitVersion": "212a8dbb47f07427dae194a9c75baec1d81d9259",
"openSSLVersion": "OpenSSL 1.1.1k 25 Mar 2021",
"modules": [],
"allocator": "tcmalloc",
"environment": {
"distmod": "debian10",
"distarch": "x86_64",
"target_arch": "x86_64"
}
}
Bu komutu kullanarak açılışta başlamasını sağlayalım:
sudo systemctl enable mongod
Gerektiğinde, aşağıdaki komutu çalıştırarak mongod sürecini durdurabilirsiniz:
sudo systemctl stop mongod
MongoDB’yi Yapılandırın
Varsayılan olarak, MongoDB için yapılandırma dosyası “/etc/mongod.conf
” konumunda bulunur.
Parola kimlik doğrulamasını etkinleştir
Parola kimlik doğrulamasını etkinleştirmek için yapılandırma dosyasını açın:
sudo nano /etc/mongod.conf
#security
satırını bulun ve (# işaretini kaldırın) ve “authorization: enabled
” ekleyin:
security:
authorization: enabled
Bundan sonra, değişikliklerin geçerli olması için mongod hizmetini yeniden başlatın:
sudo systemctl restart mongod
Uzaktan erişimi etkinleştir
MongoDB veritabanınıza uzaktan erişimi etkinleştirmek için, “/etc/mongod.conf
” adresindeki yapılandırma dosyasını düzenlemeniz gerekir.
sudo nano /etc/mongod.conf
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1,sunucunuz-IP
IP’yi ekledikten sonra hizmeti yeniden başlatın:
sudo systemctl restart mongod
Güvenlik duvarınızı etkinleştirdiyseniz, güvenlik duvarında güvenilen uzak IP adreslerine de izin vermeniz gerekir:
sudo ufw allow from your-server-ip to any port 27017
Yönetici MongoDB Kullanıcısı Oluşturma
MongoDB kimlik doğrulamasını etkinleştirdiyseniz, MongoDB örneğine erişebilen ve onu yönetebilen bir yönetici kullanıcı oluşturmanız gerekir.
MongoDB kabuğuna erişmek için terminalde mongosh
komutunu gösterildiği gibi çalıştırın:
mongosh
Mevcut veritabanlarını listeleyin:
show dbs
admin 41 kB
config 36.9 kB
local 41 kB
Yönetici veritabanına bağlanın:
use admin
MongoDB’yi yönetmek için kullanılacak bir yönetici kullanıcısı oluşturun:
db.createUser(
{
user: "admin",
pwd: "JcMDOOokzO",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
Mongo kabuğundan çıkın.
exit
Daha önce oluşturduğunuz bir yönetici kullanıcıyı kullanarak MongoDB’ye bağlanmak için:
sudo mongosh -u admin -p --authenticationDatabase admin
Herhangi bir argüman olmadan mongosh
yazarak MongoDB’ye bağlanmayı deneyebilirsiniz.
Bağlandıktan sonra show dbs
komutunu çalıştırabilirsiniz. Hata alacaksınız:
MongoServerError: command listDatabases requires authentication
MongoDB’yi Kaldır
MongoDB ve ilgili bağımlılıkları tamamen kaldırmak istiyorsanız aşağıdaki komutu çalıştırın:
sudo apt purge --autoremove -y mongodb-org
Ayrıca MongoDB günlük verilerini ve diğer ilgili dizinleri ve dosyaları da kaldırabilirsiniz:
sudo rm -rf /var/log/mongodb
sudo rm -rf /var/lib/mongodb
sudo rm -rf ~/.mongodb
sudo rm -rf ~/.dbshell
sudo rm -rf ~/.mongorc.js
Kapanış
MongoDB 5.0’ı Debian 11’e kurulumunu gerçekleştirdik.
Herhangi bir sorunuz varsa, lütfen aşağıya bir yorum bırakın.