Ubuntu'ya MongoDB veritabanı sistemi nasıl kurulur?

MongoDB

Bu blogda, en popülerleri MariaDB ve MySQL olan, genellikle Xampp veya Lampp'de bulunan sistemler olan bazı veritabanı sistemlerinden bahsettik. Bu sefer hakkında konuşacağız başka bir sistem olan MongoDB.

MongoDB açık kaynaklı, belge odaklı bir NoSQL veritabanı sistemi, Bu yüksek performanslı veri kalıcılığı için tasarlanmış modern bir belge veritabanı yönetim sistemi, NoSQL tekniğinin teknolojisine dayalı yüksek kullanılabilirlik ve otomatik ölçeklendirme.

MongoDB, ilişkisel veritabanlarında olduğu gibi verileri tablolara kaydetmek yerine, veri yapılarını bir belgeye kaydeder.alan ve değer çiftlerinden oluşan bir veri yapısı olan (MongoDB belgeleri JSON nesneleriyle karşılaştırılabilir).

Yüksek performans ve mükemmel ölçeklenebilirlik özellikleri sağladığı için, güçlü, görev açısından kritik ve yüksek düzeyde erişilebilir veritabanları gerektiren modern uygulamalar oluşturmak için kullanılmaktadır.

Ubuntu'da MongoDB kurulumu

Bu veritabanı sistemini sistemimize kurmak için, Sadece bir terminal açmalı ve içinde aşağıdaki komutu uygulamalıyız:

sudo apt install mongodb

Kurulum tamamlandı, MongoDB hizmeti systemd üzerinden otomatik olarak başlayacak ve işlem 27017 numaralı bağlantı noktasında çalışacaktır. Şu komutu kullanarak durumunu kontrol edebilirsiniz:

sudo systemctl status mongodb

Değilse, şu komutla başlangıcı zorlayabiliriz:

sudo systemctl start mongodb

MongoDB'ye uzaktan bağlantıların etkinleştirilmesi

Mongo DB 1

MongoDB veritabanı sistemi varsayılan olarak açmamız gereken 27017 numaralı bağlantı noktasını kullanır. Uzak bağlantıları kabul etmek için, yalnızca aşağıdaki komutla etkinleştiririz.

sudo ufw allow 27017

Varsayılan olarak, 27017 numaralı bağlantı noktasına yalnızca 127.0.0.1 yerel adresinden erişilebilir. MongoDB'ye uzak bağlantılara izin vermek için, sunucunun IP adresini dosyaya eklemek gerekir. /etc/mongodb.conf

Sadece şununla düzenleyin:

sudo nano

Ve buna benzer bir şey görebiliriz:

bind_ip = 127.0.0.1, your_server_ip

#port = 27,017

Sunucumuzdaki verilerle düzenlediğimiz.

MongoDB'ye her yerden erişime izin vererek, veri tabanındaki verilere sınırsız erişim sağlar. Bu nedenle, MongoDB bağlantı noktasının konuma özgü varsayılan IP adresine erişim sağlamak daha iyidir.

sudo ufw allow from your_server_IP/32 to any port 27017

sudo ufw status

Bu yapıldıktan sonra, yeni değişikliklerin başlangıçta yüklenmesi için servisi yeniden başlatmak yeterlidir, bunu aşağıdakilerle yapıyoruz:

sudo systemctl restart mongodb

MongoDB'de şifreli bir kullanıcı oluşturun

Varsayılan olarak veritabanı oldukça basit erişime sahiptir, bu nedenle bunu güçlendirmek için parolalı bir kullanıcı oluşturabiliriz.

MongoDB, SCRAM kimlik doğrulama mekanizmasını kullanır varsayılan olarak. Sistemde SCRAM kullanmak, sağlanan kullanıcı kimlik bilgilerini kullanıcı adı, parola ve kimlik doğrulama veritabanına göre doğrular.

Veritabanı konsolunu aşağıdaki komutla başlatmanız yeterlidir:

Mongo

Mevcut veri tabanlarının bir listesini şu şekilde yapabiliriz:

show dbs

Kullanıcıları ve işlevleri yönetmemize izin verecek bir kullanıcı oluşturabiliriz örneğin kullanıcı oluşturma, kullanıcı rolleri verme veya iptal etme ve gümrük rolleri oluşturma veya değiştirme gibi.

Sadece yaz

use admin

Ve kullanıcıyı aşağıdaki komutla oluşturuyoruz, "root" kullanıcı adını ve "şifre" şifresini, uygun olduğuna inandığımız erişim kreatifleri ile değiştiririz.

db.createUser({user:"root", pwd:"password", roles:[{role:"root", db:"admin"}]})

Bu yapıldıktan sonra, kimlik doğrulama yöntemini etkinleştirmeliyiz bunun için aşağıdaki dosyayı düzenleyeceğiz:

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

Ve bir sonraki satırı arayacağız:

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

Ve aşağıdaki gibi düzenleyin:

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

Şimdi sadece veritabanında yeniden başlatıyoruz

systemctl daemon-reload

sudo systemctl restart mongodb

sudo systemctl status mongodb              

Y Kimlik doğrulama yöntemini şu şekilde test ediyoruz:

mongo -u "usuario" -p --authenticationDatabase "contraseña"

Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.

  1.   Tespit edilebilir dijo

    Bu HATA ile bana yardım et.

    2021-03-24T21: 33: 16.233 + 0000 E QUERY [thread1] Hata: listDatabases başarısız oldu: {
    «Tamam»: 0,
    "Errmsg": "yönetici üzerinde {listDatabases: 1.0, $ db: \" admin \ "}" komutunu yürütme yetkisi yok,
    "Kod": 13,
    "CodeName": "Yetkisiz"
    }:
    _getErrorWithCode@src/mongo/shell/utils.js: 25:13
    Mongo.prototype.getDBs@src/mongo/shell/mongo.js: 65: 1
    shellHelper.show@src/mongo/shell/utils.js: 816: 19
    shellHelper@src/mongo/shell/utils.js: 706: 15
    @ (shellhelp2): 1: 1