Ako nainštalovať databázový systém MongoDB na Ubuntu?

MongoDB

V tomto blogu sme hovorili o niektorých databázových systémoch, z ktorých najobľúbenejšie sú MariaDB a MySQL, pretože to sú systémy, ktoré sú zvyčajne obsiahnuté v Xampp alebo Lampp. Tentokrát sa budeme baviť iný systém, ktorý je MongoDB.

MongoDB je otvorený databázový systém NoSQL zameraný na dokumenty, Toto je moderný systém správy databáz dokumentov navrhnutý pre vysoko výkonnú perzistenciu údajov, vysoká dostupnosť, ako aj automatické škálovanie, založené na technológii techniky NoSQL.

Namiesto ukladania údajov do tabuliek, ako sa to deje v relačných databázach, ukladá MongoDB dátové štruktúry do dokumentu, čo je dátová štruktúra pozostávajúca z párov polí a hodnôt (dokumenty MongoDB sú porovnateľné s objektmi JSON).

Pretože poskytuje vysoký výkon a vynikajúce charakteristiky škálovateľnosti, používa sa na vytváranie moderných aplikácií, ktoré vyžadujú výkonné, kriticky dôležité a vysoko dostupné databázy.

Inštalácia MongoDB na Ubuntu

Ak chcete nainštalovať tento databázový systém do nášho systému, Musíme iba otvoriť terminál a vykonať v ňom nasledujúci príkaz:

sudo apt install mongodb

Inštalácia je hotová, Služba MongoDB sa spustí automaticky cez systemd a proces bude prebiehať na porte 27017. Jeho stav môžete skontrolovať pomocou príkazu:

sudo systemctl status mongodb

Ak nie, môžeme vynútiť štart pomocou tohto príkazu:

sudo systemctl start mongodb

Povolenie vzdialených pripojení k MongoDB

Mongo DB 1

Databázový systém MongoDB štandardne používa port 27017, ktorý musíme otvoriť Aby sme mohli prijímať vzdialené pripojenia, povoľujeme ich iba pomocou nasledujúceho príkazu.

sudo ufw allow 27017

V predvolenom nastavení je k portu 27017 prístup iba z miestnej adresy 127.0.0.1. Pre umožnenie vzdialeného pripojenia k MongoDB je potrebné do súboru pridať IP adresu servera /etc/mongodb.conf

Stačí ich upraviť pomocou:

sudo nano

A môžeme vidieť niečo podobné tomuto:

bind_ip = 127.0.0.1, your_server_ip

#port = 27,017

Ktoré upravujeme údajmi z nášho servera.

Umožňujúc odkiaľkoľvek prístup k MongoDB, poskytuje neobmedzený prístup k údajom v databáze. Preto je lepšie poskytnúť prístup k predvolenej adrese IP špecifickej pre dané miesto portu MongoDB.

sudo ufw allow from your_server_IP/32 to any port 27017

sudo ufw status

Akonáhle je to hotové, stačí reštartovať službu, aby sa na začiatku načítali nové zmeny, čo robíme s:

sudo systemctl restart mongodb

Vytvorte používateľa v MongoDB pomocou hesla

Štandardne má databáza dosť jednoduchý prístup, aby sme ju posilnili, môžeme vytvoriť používateľa s heslom.

MongoDB používa mechanizmus autentifikácie SCRAM predvolene. Použitím SCRAM v systéme sa overia zadané poverenia používateľa podľa mena používateľa, hesla a autentifikačnej databázy.

Stačí spustiť databázovú konzolu pomocou nasledujúceho príkazu:

Mongo

Môžeme vytvoriť zoznam existujúcich databáz pomocou:

show dbs

Môžeme vytvoriť používateľa, ktorý nám umožní spravovať používateľov a funkcie napríklad vytváranie používateľov, udeľovanie alebo rušenie rolí používateľov a vytváranie alebo úprava colných rolí.

Stačí napísať

use admin

A používateľa vytvoríme nasledujúcim príkazom, kde nahradíme meno používateľa „root“ a heslo „heslo“, prístupovými Crecenciales, ktoré považujeme za vhodné.

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

Keď to bude hotové, musíme povoliť metódu autentifikácie z tohto dôvodu upravíme nasledujúci súbor:

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

A budeme hľadať ďalší riadok:

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

A upraviť tak, aby to bolo takto:

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

Teraz jednoducho reštartujeme z databázy

systemctl daemon-reload

sudo systemctl restart mongodb

sudo systemctl status mongodb              

Y Metódu autentifikácie testujeme pomocou:

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

Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.

  1.   Zistiteľné dijo

    Pomôžte mi s touto CHYBOU.

    2021-03-24T21: 33: 16.233 + 0000 E DOPYT [vlákno1] Chyba: zoznam zlyhal: {
    «Ok»: 0,
    "Errmsg": "nie je oprávnený správcom na vykonanie príkazu {listDatabases: 1.0, $ db: \" admin \ "}",
    "Kód": 13,
    "CodeName": "Neoprávnené"
    }:
    _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