MongoDB on ilmainen ja avoimen lähdekoodin asiakirjatietokanta. Se kuuluu NoSQL-nimiseen tietokantaperheeseen, joka eroaa perinteisistä taulukkopohjaisista SQL-tietokannoista, kuten MySQL:stä ja PostgreSQL:stä.
MongoDB:ssä tiedot tallennetaan joustaviin, JSON-muotoisiin dokumentteihin, joissa kentät voivat vaihdella dokumentista toiseen. Se ei vaadi ennalta määriteltyä skeemaa, ja tietorakennetta voidaan muuttaa ajan myötä.
Tässä opetusohjelmassa käsittelemme MongoDB Community Editionin uusimman version asentamista ja konfigurointia Ubuntu 18.04 -koneeseen MongoDB:n virallisista arkistoista.
Edellytykset #
Voit ennen tämän opetusohjelman jatkamista varmistaa, että olet kirjautunut sisään käyttäjänä, jolla on sudo-oikeudet.
MongoDB:n asentaminen #
Tämän artikkelin kirjoittamishetkellä MongoDB:n uusin versio on versio 4.0.
Ennen kuin jatkat asennusta, suuntaa MongoDB:n dokumentaation kohtaan Install on Ubuntusection ja tarkista, onko uusi versio saatavilla.
Seuraavat vaiheet kuvaavat MongoDB:n asentamista Ubuntu-palvelimelle:
-
Lisää MongoDB:n GPG-avain järjestelmääsi seuraavalla komennolla:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Kun avain on tuotu, lisää MongoDB-tietovarasto komennolla:
sudo add-apt-repository 'deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'
Jos saat virheilmoituksen, jossa lukee
add-apt-repository command not found
, asenna pakettisoftware-properties-common
.Jos haluat asentaa vanhemman MongoDB-version, korvaa
4.0
haluamallasi versiolla. -
Päivitä pakettiluettelo ja asenna
mongodb-org
-metapaketti kirjoittamalla:sudo apt update
sudo apt install mongodb-org
Seuraavat paketit asennetaan järjestelmääsi osana
mongodb-org
-pakettia:-
mongodb-org-server
–mongod
-daemon ja vastaavat init-skriptit ja -määritykset. -
mongodb-org-mongos
–mongos
daemon. -
mongodb-org-shell
– Mongo shell on interaktiivinen JavaScript-käyttöliittymä MongoDB:hen. Sitä käytetään hallinnollisten tehtävien suorittamiseen komentorivin kautta. -
mongodb-org-tools
– Sisältää useita MongoDB-työkaluja tietojen tuontiin ja vientiin, tilastoja sekä muita apuohjelmia.
-
-
Kun asennus on valmis, käynnistä MongoDB-daemon ja anna sen käynnistyä käynnistyksen yhteydessä kirjoittamalla:
sudo systemctl start mongod
sudo systemctl enable mongod
-
Varmistaaksemme, onko asennus suoritettu onnistuneesti, otamme yhteyden MongoDB-tietokantapalvelimeen käyttämällä
mongo
-työkalua ja tulostamme yhteyden tilan:mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Tuloste näyttää tältä:
MongoDB shell version v4.0.10connecting to: mongodb://127.0.0.1:27017MongoDB server version: 4.0.10{ "authInfo" : { "authenticatedUsers" : , "authenticatedUserRoles" : }, "ok" : 1}
Kentän
ok
arvo1
tarkoittaa onnistumista.
MongoDB:n konfigurointi #
MongoDB käyttää YAML-muotoista konfiguraatiotiedostoa, /etc/mongod.conf
. Voit konfiguroida MongoDB-instanssisi muokkaamalla tätä tiedostoa.
Oletuskonfiguraatioasetukset riittävät useimmille käyttäjille. Tuotantoympäristöissä on kuitenkin suositeltavaa poistaa kommentit security-osiosta ja ottaa auktorisointi käyttöön alla esitetyllä tavalla:
security: authorization: enabled
Vaihtoehto authorization
ottaa käyttöön RBAC-käytönvalvonnan (Role-Based Access Control), joka säätelee käyttäjien pääsyä tietokannan resursseihin ja toimintoihin. Jos tämä vaihtoehto on poistettu käytöstä, jokaisella käyttäjällä on pääsy kaikkiin tietokantoihin ja hän voi suorittaa mitä tahansa toimintoja.
Kun olet tehnyt muutoksia MongoDB:n konfigurointitiedostoon, käynnistä mongod-palvelu uudelleen seuraavalla tavalla:
sudo systemctl restart mongod
Lisätietoa konfigurointivaihtoehdoista, jotka ovat käytettävissä MongoDB 4:ssä.0, käy Configuration File Optionsdocumentation-sivulla.
Creating Administrative MongoDB User #
Jos otit MongoDB-todennuksen käyttöön, luo hallinnollinen MongoDB-käyttäjä, jota käytetään MongoDB-instanssin käyttämiseen ja hallintaan.
Käynnistä ensin Mongo-shell:
mongo
Kun olet MongoDB-shellin sisällä, kirjoita seuraava komento muodostaaksesi yhteyden admin
-tietokantaan:
use admin
switched to db admin
Luo seuraavalla komennolla uusi käyttäjä nimeltä mongoAdmin
roolilla userAdminAnyDatabase
:
db.createUser( { user: "mongoAdmin", pwd: "changeMe", roles: })
Successfully added user: {"user" : "mongoAdmin","roles" : }
Poistu mongo-kuoresta komennolla:
quit()
Käy testataksesi muutoksia, pääset mongo-kuoreen aiemmin luomallasi hallintakäyttäjällä:
mongo -u mongoAdmin -p --authenticationDatabase admin
use admin
switched to db admin
Tulosta nyt käyttäjät komennolla:
show users
{"_id" : "admin.mongoAdmin","user" : "mongoAdmin","db" : "admin","roles" : ,"mechanisms" : }
Voit myös kokeilla käyttää mongo-kuorta ilman argumentteja ( kirjoita vain mongo
) ja kokeilla, pystytkö listaamaan käyttäjät käyttämällä samoja komentoja kuin edellä.
Tulos #
Olet oppinut asentamaan ja konfiguroimaan MongoDB 4.0:n Ubuntu 18.04 -palvelimelle. Vieraile MongoDB 4.0 Manualissa saadaksesi lisätietoja tästä aiheesta.