Hvordan installerer du MongoDB-databasesystemet på Ubuntu?

MongoDB

I denne bloggen har vi snakket om noen databasesystemer, blant dem de mest populære er MariaDB og MySQL, siden de er systemene som vanligvis er inkludert i Xampp eller Lampp. Denne gangen skal vi snakke om et annet system som er MongoDB.

MongoDB er et open source-dokument orientert NoSQL-databasesystem, Dette er et moderne dokumentdatabasehåndteringssystem designet for data med høy ytelse, høy tilgjengelighet, samt automatisk skalering, basert på teknologien til NoSQL-teknikken.

I stedet for å lagre data i tabeller slik det gjøres i relasjonsdatabaser, lagrer MongoDB datastrukturer i et dokument, som er en datastruktur som består av felt- og verdipar (MongoDB-dokumenter er sammenlignbare med JSON-objekter).

Fordi den gir høy ytelse og gode skalerbarhetsegenskaper, blir den brukt til å bygge moderne applikasjoner som krever kraftige, oppdragskritiske og svært tilgjengelige databaser.

MongoDB installasjon på Ubuntu

For å installere dette databasesystemet på systemet vårt, Vi trenger bare å åpne en terminal og utføre følgende kommando i den:

sudo apt install mongodb

Installasjonen er ferdig, MongoDB-tjenesten starter automatisk via systemd og prosessen vil kjøre på port 27017. Du kan sjekke statusen ved å bruke kommandoen:

sudo systemctl status mongodb

Hvis ikke, kan vi tvinge starten med denne kommandoen:

sudo systemctl start mongodb

Aktiverer eksterne tilkoblinger til MongoDB

Mongo DB 1

MongoDB-databasesystemet bruker som standard port 27017 som vi må åpne For å akseptere eksterne tilkoblinger, aktiverer vi det bare med følgende kommando.

sudo ufw allow 27017

Som standard er port 27017 bare tilgjengelig fra den lokale adressen 127.0.0.1. For å tillate eksterne tilkoblinger til MongoDB, er det nødvendig å legge til serverens IP-adresse i filen /etc/mongodb.conf

Bare rediger den med:

sudo nano

Og vi kan se noe som ligner på dette:

bind_ip = 127.0.0.1, your_server_ip

#port = 27,017

Som vi redigerer med dataene fra serveren vår.

Når du gir tilgang til MongoDB fra overalt, gir det ubegrenset tilgang til dataene i databasen. Derfor er det bedre å gi tilgang til den stedsspesifikke IP-adressen til MongoDB-porten.

sudo ufw allow from your_server_IP/32 to any port 27017

sudo ufw status

Når dette er gjort, er det nok å starte tjenesten på nytt slik at de nye endringene lastes inn i begynnelsen, vi gjør dette med:

sudo systemctl restart mongodb

Opprett en bruker i MongoDB med passord

Som standard har databasen ganske enkel tilgang, så for å forsterke dette kan vi opprette en bruker med passord.

MongoDB bruker SCRAM-autentiseringsmekanismen som standard. Ved å bruke SCRAM på systemet verifiseres de oppgitte brukerlegitimasjonene mot brukernavnet, passordet og autentiseringsdatabasen.

Bare start databasekonsollen med følgende kommando:

Mongo

Vi kan lage en liste over eksisterende databaser med:

show dbs

Vi kan opprette en bruker som lar oss administrere brukere og funksjoner som å opprette brukere, tildele eller tilbakekalle brukerroller, og opprette eller endre tollroller.

Bare skriv

use admin

Og vi oppretter brukeren med følgende kommando, hvor vi erstatter navnet på brukeren "root" og passordet "passord", med tilgangsfakta som vi anser passende.

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

Når dette er gjort, må vi aktivere godkjenningsmetoden for dette skal vi redigere følgende fil:

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

Og vi vil se etter neste linje:

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

Og rediger slik at det blir som følger:

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

vi bare starter på nytt i databasen

systemctl daemon-reload

sudo systemctl restart mongodb

sudo systemctl status mongodb              

Y Vi tester autentiseringsmetoden med:

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

Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   Påviselig sa

    Hjelp meg med denne FEILEN.

    2021-03-24T21: 33: 16.233 + 0000 E SPØRSMÅL [thread1] Feil: listeDatabaser mislyktes: {
    «Ok»: 0,
    "Errmsg": "ikke autorisert av admin til å utføre kommandoen {listDatabases: 1.0, $ db: \" admin \ "}",
    "Kode": 13,
    "CodeName": "Uautorisert"
    }:
    _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