Kule bhlogi sithethe ngezinye zeenkqubo zedatha, phakathi kwazo ezona zidumileyo nguMariaDB kunye neMySQL, njengoko ziinkqubo ezihlala zibandakanywa kwiXampp okanye kwiLampp. Ngeli xesha siza kuthetha ngalo enye inkqubo eyi UMongoDB.
IMongoDB yiyo uxwebhu lomthombo ovulekileyo ojolise kwinkqubo yedatha yeNoSQL, Yi le Inkqubo yolawulo lwedatha yala maxesha eyilelwe ukuqhubeka kokusebenza kwedatha, ukufumaneka okuphezulu, kunye nokukala ngokuzenzekelayo, ngokusekwe kubuchwephesha bendlela yeNoSQL.
Endaweni yokugcina idatha kwiitafile njengoko kusenziwa kulwazi olunxulumene nolwalamano, iMongoDB igcina izakhiwo zedatha kuxwebhu, esisakhiwo sedatha esineentsimi kunye nexabiso lesibini (amaxwebhu eMongoDB athelekiswa nezinto zeJSON).
Ngenxa yokuba ibonelela ngokusebenza okuphezulu kunye neempawu ezibalaseleyo zokungazinzi, isetyenziselwa ukwakha usetyenziso lwangoku olufuna ulwazi olunamandla, olubalulekileyo kunye nolufumanekayo.
Ukufakwa kwe-MongoDB kwi-Ubuntu
Ukufakela le nkqubo yedatha kwinkqubo yethu, Kuphela kufuneka sivule i-terminal kwaye senze lo myalelo ulandelayo:
sudo apt install mongodb
Ufakelo lwenziwe, Inkonzo yeMongoDB iya kuqala ngokuzenzekelayo ngenkqubo kwaye inkqubo iya kusebenza kwizibuko 27017. Ungajonga imeko yayo usebenzisa lo myalelo:
sudo systemctl status mongodb
Ukuba akunjalo, sinokunyanzela ukuqala ngalo myalelo:
sudo systemctl start mongodb
Ukwenza unxibelelwano olukude kwi-MongoDB
Inkqubo yedatha yeMongoDB ngokungagqibekanga isebenzisa izibuko 27017 ekufuneka siyivulile Ukuze samkele unxibelelwano olukude, sinika amandla kuphela ngalo myalelo ulandelayo.
sudo ufw allow 27017
Ngokuzenzekelayo, izibuko i-27017 inokufikeleleka kuphela kwidilesi yendawo eyi-127.0.0.1. Ukuvumela unxibelelwano olukude kwi-MongoDB, kuyimfuneko ukongeza idilesi ye-IP yeseva kwifayile /etc/mongodb.conf
Hlela nje nge:
sudo nano
Kwaye sinokubona into efana nale:
bind_ip = 127.0.0.1, your_server_ip #port = 27,017
Esiyihlela kunye nedatha esuka kwiseva yethu.
Ukuvumela ukufikelela kwi-MongoDB naphi na, kunika ukufikelela okungathintelwanga kwidatha kwindawo yogcino lwedatha. Ke ngoko, kungcono ukunika ukufikelela kwidilesi engagqibekanga ye-IP kwizibuko leMongoDB.
sudo ufw allow from your_server_IP/32 to any port 27017 sudo ufw status
Nje ukuba kwenziwe, kwanele ukuqala kabusha inkonzo ukuze utshintsho olutsha lulayishwe ekuqaleni, oku sikwenza nge:
sudo systemctl restart mongodb
Yenza umsebenzisi kwi-MongoDB enegama eligqithisiweyo
Ngokuzenzekelayo isiseko sedatha sinokufikelela ngokulula, ke ukuqinisa oku sinokwenza umsebenzisi ngegama eligqithisiweyo.
I-MongoDB isebenzisa inkqubo yoqinisekiso lwe-SCRAM ngokuzenzekela. Usebenzisa i-SCRAM kwinkqubo iqinisekisa ubungqina obonelelweyo bomsebenzisi ngokuchasene negama lomsebenzisi, ipassword kunye nesiseko sedatha.
Qalisa nje ikhonkco ledatha ngalo myalelo ulandelayo:
Mongo
Sinokwenza uluhlu lweedatha ezikhoyo nge:
show dbs
Sinokwenza umsebenzisi oya kusivumela ukuba silawule abasebenzisi kunye nemisebenzi njengokudala abasebenzisi, ukunika okanye ukurhoxisa iindima zomsebenzisi, kunye nokwenza okanye ukuguqula iindima zesiko.
Chwetheza nje
use admin
Kwaye senza umsebenzisi ngalo myalelo ulandelayo, apho sibeka khona igama lomsebenzisi "ingcambu" kunye negama lokugqitha "iphasiwedi", ngokufikelela kwi-crecenciales esikholelwa ukuba kufanelekile.
db.createUser({user:"root", pwd:"password", roles:[{role:"root", db:"admin"}]})
Nje ukuba yenziwe, kufuneka senze indlela yokuqinisekisa Ngale nto siza kuhlelela le fayile ilandelayo:
sudo nano /lib/systemd/system/mongodb.service
Kwaye siya kujonga umgca olandelayo:
ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS
Kwaye hlela ukuze ibe yile ilandelayo:
ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS
Ngoku simane siqala ngokutsha kwiziko ledatha
systemctl daemon-reload sudo systemctl restart mongodb sudo systemctl status mongodb
Y Sivavanya indlela yokuqinisekisa nge:
mongo -u "usuario" -p --authenticationDatabase "contraseña"
Ndincede ngale MPazamo.
2021-03-24T21: 33: 16.233 + 0000 E UMBUZO [umsonto1] Impazamo: uluhlu Iinkcukacha aziphumelelanga: {
«Kulungile»: 0,
"Errmsg": "ayigunyaziswanga kulawulo ukwenza umyalelo {listDatabases: 1.0, $ db: \" admin \ "}",
"Ikhowudi": 13,
"IkhowudiName": "Akugunyaziswanga"
}:
_getErrorWithCode@src/mongo/shell/utils.js: 25: 13
IMongo.prototype.getDBs@src/mongo/shell/mongo.js: 65: 1
iqokobheHelper.show@src/mongo/shell/utils.js: 816: 19
iqokobheHelper@src/mongo/shell/utils.js: 706: 15
@ (iqokobhe2): 1: 1