Cum se instalează sistemul de baze de date MongoDB pe Ubuntu?

MongoDB

În acest blog am vorbit despre unele sisteme de baze de date, printre care cele mai populare sunt MariaDB și MySQL, deoarece acestea sunt sistemele care sunt de obicei incluse în Xampp sau Lampp. De data aceasta vom vorbi despre un alt sistem care este MongoDB.

MongoDB este un sistem de baze de date NoSQL orientat către documente open source, Aceasta este un sistem modern de gestionare a bazelor de date de documente conceput pentru persistența datelor de înaltă performanță, disponibilitate ridicată, precum și scalare automată, bazată pe tehnologia tehnicii NoSQL.

În loc să salveze datele în tabele așa cum se face în bazele de date relaționale, MongoDB salvează structurile de date într-un document, care este o structură de date care cuprinde perechi de câmp și valoare (documentele MongoDB sunt comparabile cu obiectele JSON).

Deoarece oferă performanțe ridicate și caracteristici de scalabilitate excelente, este utilizat pentru a construi aplicații moderne care necesită baze de date puternice, critice pentru misiune și foarte disponibile.

Instalarea MongoDB pe Ubuntu

Pentru a instala acest sistem de baze de date pe sistemul nostru, Trebuie doar să deschidem un terminal și să executăm următoarea comandă:

sudo apt install mongodb

Instalare finalizată, Serviciul MongoDB va porni automat prin systemd iar procesul va rula pe portul 27017. Puteți verifica starea acestuia folosind comanda:

sudo systemctl status mongodb

Dacă nu, putem forța startul cu această comandă:

sudo systemctl start mongodb

Activarea conexiunilor la distanță la MongoDB

Mongo DB 1

Sistemul de baze de date MongoDB implicit folosește portul 27017 pe care trebuie să îl deschidem Pentru a accepta conexiuni la distanță, o activăm numai cu următoarea comandă.

sudo ufw allow 27017

În mod implicit, portul 27017 poate fi accesat numai de la adresa locală 127.0.0.1. Pentru a permite conexiuni la distanță la MongoDB, este necesar să adăugați adresa IP a serverului în fișier /etc/mongodb.conf

Editați-l doar cu:

sudo nano

Și putem vedea ceva similar cu acesta:

bind_ip = 127.0.0.1, your_server_ip

#port = 27,017

Pe care le edităm cu datele de pe serverul nostru.

Permițând accesul la MongoDB de oriunde, oferă acces nerestricționat la datele din baza de date. Prin urmare, este mai bine să dați acces la adresa IP implicită specifică locației portului MongoDB.

sudo ufw allow from your_server_IP/32 to any port 27017

sudo ufw status

Odată ce ați făcut acest lucru, este suficient să reporniți serviciul, astfel încât noile modificări să fie încărcate la început, asta facem cu:

sudo systemctl restart mongodb

Creați un utilizator în MongoDB cu parolă

În mod implicit, baza de date are acces destul de simplu, deci pentru a consolida acest lucru putem crea un utilizator cu o parolă.

MongoDB utilizează mecanismul de autentificare SCRAM în mod implicit. Utilizarea SCRAM pe sistem verifică acreditările de utilizator furnizate în raport cu numele de utilizator, parola și baza de date de autentificare.

Pur și simplu porniți consola bazei de date cu următoarea comandă:

Mongo

Putem face o listă a bazelor de date existente cu:

show dbs

Putem crea un utilizator care ne va permite să gestionăm utilizatorii și funcțiile precum crearea de utilizatori, acordarea sau revocarea rolurilor de utilizator și crearea sau modificarea rolurilor vamale.

Doar tastați

use admin

Și creăm utilizatorul cu următoarea comandă, unde înlocuim numele utilizatorului „rădăcină” și parola „parolă”, cu creșterile de acces pe care le considerăm adecvate.

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

Odată ce acest lucru este făcut, trebuie să activăm metoda de autentificare pentru aceasta vom edita următorul fișier:

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

Și vom căuta următoarea linie:

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

Și editați astfel încât să fie după cum urmează:

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

Acum pur și simplu repornim în baza de date

systemctl daemon-reload

sudo systemctl restart mongodb

sudo systemctl status mongodb              

Y Testăm metoda de autentificare cu:

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

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   Detectabil el a spus

    Ajută-mă cu această EROARE.

    2021-03-24T21: 33: 16.233 + 0000 E CERERE [thread1] Eroare: listBazele de date nu au reușit: {
    «Ok»: 0,
    "Errmsg": "nu este autorizat de administrator să execute comanda {listDatabases: 1.0, $ db: \" admin \ "}",
    „Cod”: 13,
    "CodeName": "Neautorizat"
    }:
    _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