Kā Ubuntu instalēt MongoDB datu bāzes sistēmu?

MongoDB

Šajā emuārā mēs esam runājuši par dažām datu bāzu sistēmām, no kurām vispopulārākās ir MariaDB un MySQL, jo tās ir sistēmas, kas parasti tiek iekļautas Xampp vai Lampp. Šoreiz parunāsim cita sistēma, kas ir MongoDB.

MongoDB ir uz atvērtā koda dokumentu orientētu NoSQL datu bāzes sistēmu, Tas ir moderna dokumentu datu bāzes pārvaldības sistēma, kas paredzēta augstas veiktspējas datu noturībai, augsta pieejamība, kā arī automātiska mērogošana, pamatojoties uz NoSQL tehnikas tehnoloģiju.

Tā vietā, lai datus saglabātu tabulās, kā tas tiek darīts relāciju datu bāzēs, MongoDB saglabā datu struktūras dokumentā, kas ir datu struktūra, kas sastāv no lauku un vērtību pāriem (MongoDB dokumenti ir salīdzināmi ar JSON objektiem).

Tā kā tas nodrošina augstu veiktspēju un lieliskas mērogojamības īpašības, to izmanto, lai izveidotu modernas lietojumprogrammas, kurām nepieciešamas jaudīgas, kritiskas un ļoti pieejamas datu bāzes.

MongoDB instalēšana Ubuntu

Lai instalētu šo datu bāzes sistēmu mūsu sistēmā, Mums ir jāatver tikai terminālis un tajā jāizpilda šāda komanda:

sudo apt install mongodb

Instalācija pabeigta, MongoDB pakalpojums tiks automātiski palaists, izmantojot systemd un process darbosies portā 27017. Tā statusu var pārbaudīt, izmantojot komandu:

sudo systemctl status mongodb

Ja nē, mēs varam piespiest sākt ar šo komandu:

sudo systemctl start mongodb

Attālo savienojumu iespējošana ar MongoDB

MongoDB 1

MongoDB datu bāzes sistēma pēc noklusējuma izmanto portu 27017, kas mums jāatver Lai pieņemtu attālos savienojumus, mēs to iespējojam tikai ar šādu komandu.

sudo ufw allow 27017

Pēc noklusējuma portam 27017 var piekļūt tikai no vietējās adreses 127.0.0.1. Lai atļautu attālus savienojumus ar MongoDB, failā ir jāpievieno servera IP adrese /etc/mongodb.conf

Vienkārši rediģējiet to, izmantojot:

sudo nano

Un mēs varam redzēt kaut ko līdzīgu šim:

bind_ip = 127.0.0.1, your_server_ip

#port = 27,017

Ko mēs rediģējam ar datiem no sava servera.

Atļaujot piekļuvi MongoDB no jebkuras vietas, tas dod neierobežotu piekļuvi datu bāzē esošajiem datiem. Tāpēc labāk ir piešķirt piekļuvi MongoDB porta noklusējuma IP adresei.

sudo ufw allow from your_server_IP/32 to any port 27017

sudo ufw status

Kad tas ir izdarīts, ir pietiekami restartēt pakalpojumu, lai sākumā tiktu ielādētas jaunās izmaiņas, mēs to darām ar:

sudo systemctl restart mongodb

Izveidojiet lietotāju MongoDB ar paroli

Pēc noklusējuma datu bāzei ir diezgan vienkārša piekļuve, tāpēc, lai to pastiprinātu, mēs varam izveidot lietotāju ar paroli.

MongoDB izmanto SCRAM autentifikācijas mehānismu pēc noklusējuma. Izmantojot sistēmā SCRAM, tiek pārbaudīti piegādātie lietotāja akreditācijas dati, salīdzinot ar lietotāja vārdu, paroli un autentifikācijas datu bāzi.

Vienkārši sāciet datu bāzes konsoli ar šādu komandu:

Mongo

Mēs varam izveidot esošo datu bāzu sarakstu ar:

show dbs

Mēs varam izveidot lietotāju, kas ļaus mums pārvaldīt lietotājus un funkcijas piemēram, lietotāju izveide, lietotāju lomu piešķiršana vai atsaukšana un muitas lomu izveidošana vai modificēšana.

Vienkārši ierakstiet

use admin

Un mēs izveidojam lietotāju ar šādu komandu, kur mēs aizstājam lietotāja vārdu "root" un paroli "parole" ar piekļuves īpašībām, kuras, mūsuprāt, ir piemērotas.

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

Kad tas ir izdarīts, mums jāiespējo autentifikācijas metode šim nolūkam mēs rediģēsim šādu failu:

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

Un mēs meklēsim nākamo rindu:

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

Un rediģēt tā, lai tas būtu šāds:

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

Tagad mēs vienkārši atsāknējam datu bāzē

systemctl daemon-reload

sudo systemctl restart mongodb

sudo systemctl status mongodb              

Y Mēs pārbaudām autentifikācijas metodi ar:

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

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   Nosakāms teica

    Palīdziet man ar šo kļūdu.

    2021-03-24T21: 33: 16.233 + 0000 E QUERY [thread1] Kļūda: sarakstsDatu bāzes neizdevās:
    «Labi»: 0,
    "Errmsg": "administratoram nav atļauts izpildīt komandu {listDatabases: 1.0, $ db: \" admin \ "}",
    "Kods": 13,
    "CodeName": "Neautorizēts"
    }:
    _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