Hur installerar jag MongoDB-databassystemet på Ubuntu?

MongoDB

I den här bloggen har vi pratat om några databassystem, bland vilka de mest populära är MariaDB och MySQL, eftersom de är de system som vanligtvis ingår i Xampp eller Lampp. Den här gången ska vi prata om ett annat system som är MongoDB.

MongoDB är ett öppet dokument orienterat NoSQL-databassystem, Detta är ett modernt dokumenthanteringssystem utformat för högpresterande datatålighet, hög tillgänglighet, liksom automatisk skalning, baserat på tekniken för NoSQL-tekniken.

Istället för att spara data i tabeller som det görs i relationsdatabaser, sparar MongoDB datastrukturer i ett dokument, som är en datastruktur som består av fält- och värdepar (MongoDB-dokument är jämförbara med JSON-objekt).

Eftersom den ger hög prestanda och utmärkta skalbarhetsegenskaper används den för att bygga moderna applikationer som kräver kraftfulla, uppdragskritiska och mycket tillgängliga databaser.

MongoDB-installation på Ubuntu

För att installera detta databassystem på vårt system, Vi behöver bara öppna en terminal och utföra följande kommando i den:

sudo apt install mongodb

Installationen klar, MongoDB-tjänsten startar automatiskt via systemd och processen körs på port 27017. Du kan kontrollera dess status med kommandot:

sudo systemctl status mongodb

Om inte, kan vi tvinga starten med det här kommandot:

sudo systemctl start mongodb

Aktivera fjärranslutningar till MongoDB

Mongo DB 1

MongoDB-databassystemet använder som standard port 27017 som vi måste öppna För att acceptera fjärranslutningar aktiverar vi det bara med följande kommando.

sudo ufw allow 27017

Som standard kan port 27017 endast nås från den lokala adressen 127.0.0.1. För att tillåta fjärranslutningar till MongoDB är det nödvändigt att lägga till serverns IP-adress i filen /etc/mongodb.conf

Redigera det bara med:

sudo nano

Och vi kan se något liknande det här:

bind_ip = 127.0.0.1, your_server_ip

#port = 27,017

Som vi redigerar med data från vår server.

Tillåter åtkomst till MongoDB var som helst, det ger obegränsad åtkomst till data i databasen. Därför är det bättre att ge åtkomst till den platsspecifika IP-adressen för MongoDB-porten.

sudo ufw allow from your_server_IP/32 to any port 27017

sudo ufw status

När detta är klart räcker det att starta om tjänsten så att de nya ändringarna laddas i början, detta gör vi med:

sudo systemctl restart mongodb

Skapa en användare i MongoDB med lösenord

Som standard har databasen ganska enkel åtkomst, så för att förstärka detta kan vi skapa en användare med ett lösenord.

MongoDB använder SCRAM-autentiseringsmekanismen som standard. Användning av SCRAM i systemet verifierar de medföljande användaruppgifterna mot användarnamn, lösenord och autentiseringsdatabas.

Starta bara databaskonsolen med följande kommando:

Mongo

Vi kan göra en lista över befintliga databaser med:

show dbs

Vi kan skapa en användare som gör att vi kan hantera användare och funktioner som att skapa användare, bevilja eller återkalla användarroller och skapa eller ändra tullroller.

Bara Skriv

use admin

Och vi skapar användaren med följande kommando, där vi ersätter namnet på användaren "root" och lösenordet "lösenord", med de åtkomstfunktioner som vi anser lämpliga.

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

När detta är gjort måste vi aktivera autentiseringsmetoden för detta kommer vi att redigera följande fil:

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

Och vi kommer att leta efter nästa rad:

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

Och den redigera så att det blir som följer:

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

Nu vi startar helt enkelt om i databasen

systemctl daemon-reload

sudo systemctl restart mongodb

sudo systemctl status mongodb              

Y Vi testar autentiseringsmetoden med:

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

Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   Detekterbar sade

    Hjälp mig med detta FEL.

    2021-03-24T21: 33: 16.233 + 0000 E FRÅGA [tråd1] Fel: listaDatabaser misslyckades: {
    «Ok»: 0,
    "Errmsg": "inte behörig för admin att utföra kommandot {listDatabases: 1.0, $ db: \" admin \ "}",
    "Kod": 13,
    "CodeName": "Obehörig"
    }:
    _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