Paano i-install ang MongoDB database system sa Ubuntu?

MongoDB

Sa blog na ito napag-usapan natin ang ilang mga sistema ng database, bukod sa kung saan ang pinakatanyag ay ang MariaDB at MySQL, dahil ang mga ito ay ang mga system na karaniwang kasama sa Xampp o Lampp. Sa oras na ito ay pag-uusapan natin ibang sistema na kung saan ay MongoDB.

Ang MongoDB ay isang bukas na mapagkukunan na nakatuon sa sistema ng database ng NoSQL, Ito ay isang modernong sistema ng pamamahala ng database ng dokumento na idinisenyo para sa pagpupursige ng data na may mataas na pagganap, mataas na kakayahang magamit, pati na rin ang awtomatikong pag-scale, batay sa teknolohiya ng diskarteng NoSQL.

Sa halip na mag-save ng data sa mga talahanayan tulad ng ginagawa sa mga pamanggit na database, nai-save ng MongoDB ang mga istruktura ng data sa isang dokumento, na isang istraktura ng data na binubuo ng mga pares ng patlang at halaga (ang mga dokumento ng MongoDB ay maihahambing sa mga bagay na JSON).

Dahil nagbibigay ito ng mataas na pagganap at mahusay na mga katangian ng kakayahang sumukat, ginagamit ito upang bumuo ng mga modernong application na nangangailangan ng malakas, kritikal na misyon at lubos na magagamit na mga database.

Pag-install ng MongoDB sa Ubuntu

Upang mai-install ang sistemang database na ito sa aming system, Kailangan lang naming buksan ang isang terminal at isagawa ang sumusunod na utos dito:

sudo apt install mongodb

Tapos na ang pag-install, Ang serbisyo ng MongoDB ay awtomatikong magsisimula sa pamamagitan ng systemd at tatakbo ang proseso sa port 27017. Maaari mong suriin ang katayuan nito gamit ang utos:

sudo systemctl status mongodb

Kung hindi, mapipilit natin ang pagsisimula sa utos na ito:

sudo systemctl start mongodb

Paganahin ang mga malalayong koneksyon sa MongoDB

Mongo DB 1

Ang MongoDB database system bilang default ay gumagamit ng port 27017 na dapat nating buksan Upang matanggap ang mga malalayong koneksyon, pinapagana lamang namin ito sa sumusunod na utos.

sudo ufw allow 27017

Bilang default, ma-a-access lamang ang port 27017 mula sa lokal na address na 127.0.0.1. Upang payagan ang mga malalayong koneksyon sa MongoDB, kinakailangan upang idagdag ang IP address ng server sa file /etc/mongodb.conf

I-edit lamang ito sa:

sudo nano

At maaari nating makita ang isang bagay na katulad nito:

bind_ip = 127.0.0.1, your_server_ip

#port = 27,017

Na na-e-edit namin gamit ang data mula sa aming server.

Pinapayagan ang pag-access sa MongoDB mula sa kahit saan, nagbibigay ito ng walang limitasyong pag-access sa data sa database. Samakatuwid, mas mahusay na magbigay ng access sa tukoy na lokasyon na default na IP address ng MongoDB port.

sudo ufw allow from your_server_IP/32 to any port 27017

sudo ufw status

Kapag tapos na ito, sapat na upang i-restart ang serbisyo upang ang mga bagong pagbabago ay mai-load sa simula, ginagawa namin ito sa:

sudo systemctl restart mongodb

Lumikha ng isang gumagamit sa MongoDB na may password

Bilang default ang database ay may simpleng pag-access, kaya upang mapatibay ito maaari kaming lumikha ng isang gumagamit na may isang password.

Gumagamit ang MongoDB ng mekanismo ng pagpapatotoo ng SCRAM bilang default. Ang paggamit ng SCRAM sa system ay nagpapatunay ng mga ibinigay na kredensyal ng gumagamit laban sa username, password, at database ng pagpapatunay.

Simulan lamang ang database console sa sumusunod na utos:

Mongo

Maaari kaming gumawa ng isang listahan ng mga umiiral nang mga database sa:

show dbs

Maaari kaming lumikha ng isang gumagamit na magpapahintulot sa amin na pamahalaan ang mga gumagamit at pag-andar tulad ng paglikha ng mga gumagamit, pagbibigay o pagbawi sa mga tungkulin ng gumagamit, at paglikha o pagbabago ng mga tungkulin sa kaugalian.

Type lang

use admin

At nilikha namin ang gumagamit sa sumusunod na utos, kung saan pinalitan namin ang pangalan ng "root" ng gumagamit at ang password na "password", sa pamamagitan ng mga access sa crecenciales na sa tingin namin ay naaangkop.

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

Kapag tapos na ito, dapat naming paganahin ang pamamaraan ng pagpapatotoo para dito mai-e-edit namin ang sumusunod na file:

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

At hahanapin namin ang susunod na linya:

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

At ang i-edit upang ito ay ang mga sumusunod:

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

Ngayon simpleng pag-reboot namin sa database

systemctl daemon-reload

sudo systemctl restart mongodb

sudo systemctl status mongodb              

Y Sinusubukan namin ang pamamaraan ng pagpapatotoo sa:

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

Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   Mahahalata dijo

    Tulungan mo ako sa ERROR na ito.

    2021-03-24T21: 33: 16.233 + 0000 E QUERY [thread1] Error: listDatabases failed: {
    «Ok»: 0,
    "Errmsg": "hindi pinahintulutan sa admin na magpatupad ng command {listDatabases: 1.0, $ db: \" admin \ "}",
    "Code": 13,
    "CodeName": "Hindi Pinahintulutan"
    }:
    _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