MongoDB'nin Ubuntu 18.04'e Kurulumu


MongoDB, 'nin en son teknolojisini temel alan, yüksek performanslı veri kalıcılığı, yüksek kullanılabilirlik ve otomatik ölçeklendirme için tasarlanmış açık kaynaklı, modern bir belge veritabanı yönetim sistemidir. NoSQL. MongoDB altında kayıt, alan ve değer çiftlerinden oluşan bir veri yapısı olan bir belgedir (MongoDB belgeleri JSON nesneleriyle karşılaştırılabilir).

Yüksek performans ve mükemmel ölçeklenebilirlik özellikleri sağladığı için güçlü, kritik görev ve yüksek kullanılabilirliğe sahip veritabanları gerektiren modern uygulamalar oluşturmak için kullanılıyor.

Bu makalede, 18.04 Ubuntu'da MongoDB'nin nasıl kurulacağını, hizmetinin nasıl yönetileceğini ve temel kimlik doğrulamanın nasıl kurulacağını açıklayacağız.

Önemli: MongoDB geliştiricilerinin yalnızca 64 bit LTS (uzun vadeli destek) Ubuntu sürümleri için paketler sunduğunu unutmayın: Strong>14,04 LTS (güvenilir), 16,04 LTS (xenial) vb.

Ayrıca Okuyun: MongoDB'nin Ubuntu 16.04/14.04 LTS'ye Kurulumu

Adım 1: MongoDB'nin Ubuntu 18.04'e kurulması

1. Ubuntu'nun resmi yazılım paketi depoları MongoDB'nin en son sürümüyle birlikte gelir ve APT paket yöneticisi kullanılarak kolayca kurulabilir.

Depo listelerinin en son sürümüne sahip olmak için öncelikle sistem yazılım paketi önbelleğini güncelleyin.

sudo apt update

2. Ardından, mongo-tools, mongodb-clients, mongodb-server< gibi diğer birkaç paketi içeren MongoDB paketini yükleyin. ve mongodb-server-core.

sudo apt install mongodb

3. Başarılı bir şekilde yükledikten sonra, MongoDB hizmeti systemd aracılığıyla otomatik olarak başlayacak ve işlem 27017 bağlantı noktasını dinleyecektir. Gösterildiği gibi systemctl komutunu kullanarak durumunu doğrulayabilirsiniz.

sudo systemctl status mongodb

Adım 2: MongoDB Hizmetini Yönetme

4. MongoDB kurulumu bir systemd hizmeti olarak gelir ve gösterildiği gibi standart systemd komutları aracılığıyla kolayca yönetilebilir.

MongoDB hizmetini çalıştırmayı durdurmak için aşağıdaki komutu çalıştırın.

sudo systemctl stop mongodb	

MongoDB hizmetini başlatmak için aşağıdaki komutu yazın.

sudo systemctl start mongodb

Bir MongoDB hizmetini yeniden başlatmak için aşağıdaki komutu yazın.

sudo systemctl restart mongodb	

Otomatik olarak başlatılan MongoDB hizmetini devre dışı bırakmak için aşağıdaki komutu yazın.

sudo systemctl disable mongodb	

MongoDB hizmetini tekrar etkinleştirmek için aşağıdaki komutu yazın.

sudo systemctl enable mongodb	

3. Adım: Güvenlik Duvarında Uzaktan MongoDB Erişimini Etkinleştirin

5. Varsayılan olarak MongoDB, kullanabileceğiniz her yerden erişime izin vermek için 27017 bağlantı noktasında çalışır.

sudo ufw allow 27017

Ancak MongoDB'ye her yerden erişimin etkinleştirilmesi, veritabanı verilerine sınırsız erişim sağlar. Bu nedenle, aşağıdaki komutu kullanarak varsayılan MongoDB bağlantı noktasına belirli IP adresi konumuna erişim vermek daha iyidir.

sudo ufw allow from your_server_IP/32 to any port 27017 
sudo ufw status

6. Varsayılan olarak 27017 bağlantı noktası yalnızca 127.0.0.1 yerel adresini dinler. Uzaktan MongoDB bağlantılarına izin vermek için sunucu IP adresinizi gösterildiği gibi /etc/mongodb.conf yapılandırma dosyasına eklemeniz gerekir.

bind_ip = 127.0.0.1,your_server_ip
#port = 27017

Dosyayı kaydedin, düzenleyiciden çıkın ve MongoDB'yi yeniden başlatın.

sudo systemctl restart mongodb

Adım 4: MongoDB Veritabanı Kök Kullanıcısını ve Parolasını Oluşturun

7. Varsayılan olarak MongoDB kullanıcı kimlik doğrulaması devre dışı olarak gelir, bu nedenle erişim kontrolü olmadan başlatılır. Mongo kabuğunu başlatmak için aşağıdaki komutu çalıştırın.

mongo 

8. Mongo kabuğuna bağlandıktan sonra aşağıdaki komutla mevcut tüm veritabanlarını listeleyebilirsiniz.

> show dbs

9. Kimlik doğrulamayı zorunlu kılmak amacıyla MongoDB dağıtımınızda erişim kontrolünü etkinleştirmek için; kullanıcıların veritabanı sunucusuna her bağlandıklarında kendilerini tanımlamalarını gerektirir.

MongoDB, varsayılan olarak Tuzlu Mücadele Yanıt Kimlik Doğrulama Mekanizması (SCRAM) kimlik doğrulama mekanizmasını kullanır. MongoDB, SCRAM'i kullanarak, sağlanan kullanıcı kimlik bilgilerini kullanıcının adı, şifresi ve kimlik doğrulama veritabanı (kullanıcının oluşturulduğu veritabanı ve kullanıcı adıyla birlikte kullanıcıyı tanımlamaya hizmet eder) ile doğrular.

Yönetici veritabanında bir kullanıcı yöneticisi (MySQL/MariaDB altındaki kök kullanıcıya benzer) oluşturmanız gerekir. Bu kullanıcı, kullanıcı oluşturma, kullanıcılara rol verme veya rolleri iptal etme ve özel roller oluşturma veya değiştirme gibi kullanıcı ve rolleri yönetebilir.

Öncelikle yönetici veritabanına geçin, ardından aşağıdaki komutları kullanarak kök kullanıcıyı oluşturun.

> use admin 
> db.createUser({user:"root", pwd:"=@!#@%$admin1", roles:[{role:"root", db:"admin"}]})

Şimdi, daha sonra açıklanacağı gibi kimlik doğrulamayı etkinleştirmek için mongo kabuğundan çıkın.

10. mongodb örneği, --auth komut satırı seçeneği olmadan başlatıldı. /lib/systemd/system/mongod.service dosyasını düzenleyerek kullanıcıların kimlik doğrulamasını etkinleştirmeniz gerekir, önce dosyayı bu şekilde düzenlemek için açın.

sudo vim /lib/systemd/system/mongodb.service 

[Service] yapılandırma bölümünün altında ExecStart parametresini bulun.

ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

Aşağıdaki şekilde değiştirin:

ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

Dosyayı kaydedin ve çıkın.

11. 8. Yapılandırma dosyasında değişiklik yaptıktan sonra birimleri yeniden yüklemek için 'systemctl daemon-reload' komutunu çalıştırın ve MongoDB hizmetini yeniden başlatın ve durumunu aşağıdaki gibi kontrol edin.

systemctl daemon-reload
sudo systemctl restart mongodb	
sudo systemctl status mongodb	

12. Artık mongodb'ye bağlanmayı denediğinizde, MongoDB kullanıcısı olarak kimliğinizi doğrulamanız gerekir. Örneğin:

mongo -u "root" -p --authenticationDatabase "admin"

Not: Şifrenizi komut satırına girmeniz önerilmez çünkü şifreniz kabuk geçmişi dosyasında saklanacaktır ve daha sonra bir saldırgan tarafından görüntülenebilecektir.

Bu kadar! MongoDB, yüksek performans, yüksek kullanılabilirlik ve otomatik ölçeklendirme sağlayan açık kaynaklı, modern bir SQL olmayan veritabanı yönetim sistemidir.

Bu makalede, Ubuntu 18.04'te MongoDB'yi nasıl kuracağınızı ve kullanmaya başlayacağınızı anlattık. Sorularınız varsa aşağıdaki yorum formunu kullanarak bize ulaşabilirsiniz.