Kako instalirati MongoDB 4 u CentOS 8


MongoDB je popularan mehanizam NoSQL baze podataka baziran na dokumentima i opće namjene koji pohranjuje podatke u JSON formatu. Besplatan je i otvorenog koda i isporučuje se sa skupom kul i zgodnih funkcija kao što su skladištenje datoteka, replikacija podataka, ad-hoc upiti i balansiranje opterećenja da spomenemo samo neke. Neke od blue-chip kompanija koje su uključile MongoDB u svoje aplikacije uključuju Adobe, Facebook, Google, eBay i Coinbase.

U ovom vodiču ćete naučiti kako instalirati MongoDB na CentOS 8.

Korak 1: Dodajte MongoDB spremište

Pošto MongoDB nije prisutan u zadanom spremištu CentOS 8, dodaćemo ga ručno. Dakle, prvo, kreirajte datoteku spremišta kao što je prikazano.

vi /etc/yum.repos.d/mongodb.repo

Zalijepite konfiguraciju ispod i sačuvajte datoteku.

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/development/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

Korak 2: Instalirajte MongoDB u CentOS 8

Nakon što omogućite spremište, sljedeći korak će biti instaliranje MongoDB pomoću sljedeće dnf komande.

dnf install mongodb-org

Zatim pokrenite i omogućite MongoDB da se pokrene pri pokretanju tako što ćete pokrenuti donje naredbe.

systemctl start mongod
sudo systemctl enable mongod

Da provjerite status MongoDB, pokrenite:

systemctl status mongod

Alternativno, možete koristiti uslužni program netstat da potvrdite da usluga Mongod zaista sluša.

netstat -pnltu

Odlično! potvrdili smo da je MongoDB pokrenut i radi.

Korak 3: Pristupite MongoDB Shell-u

Sada možete pristupiti ljusci MongoDB jednostavnim izdavanjem naredbe:

mongo

Trebali biste dobiti sličan izlaz kao što je prikazano na slici ispod.

Kreiranje MongoDBan administratorskog korisnika

Hajdemo sada da promijenimo brzinu i napravimo administratorskog korisnika.
Uvijek je dobar savjet stvoriti administratorskog korisnika s povišenim privilegijama za obavljanje povišenih zadataka. Da biste to učinili, prvo pristupite ljusci MongoDB-a:

mongo

Zatim, prebacite se na administratora baze podataka pokretanjem.

> use admin

Sada kreirajte novog korisnika MongoDB pokretanjem koda ispod.

> db.createUser(
 {
 user: "mongod_admin",
 pwd: "P@ssword@2019",
 roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
 }
 )

Ako je uspješan, trebali biste dobiti donji rezultat.

Successfully added user: {
	"user" : "mongod_admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}

Za popis kreiranih MongoDB korisnika, pokrenite.

> show users

Konfiguriranje autentifikacije za MongoDB

Kako jeste, svi korisnici mogu pristupiti ljusci i izvršiti bilo koju komandu, što se uopće ne preporučuje iz sigurnosnih razloga. Imajući to na umu, moramo kreirati autentifikaciju za korisnika administratora kojeg smo upravo kreirali kako bismo spriječili druge korisnike da izvode komande bez autorizacije.

Da biste omogućili autentifikaciju, uredite datoteku /lib/systemd/system/mongod.service, u odjeljku [Service], pronađite i uredite parametar okruženja kao što je prikazano.

Environment="OPTIONS= --auth -f /etc/mongod.conf"

Sačuvajte i izađite iz konfiguracione datoteke.

Da bi promjene stupile na snagu, ponovo učitajte sistem i ponovo pokrenite MongoDB.

systemctl daemon-reload
systemctl restart mongod

Ako sada pokušate navesti korisnike bez provjere autentičnosti, trebali biste dobiti grešku kao što je prikazano.

Za autentifikaciju, jednostavno proslijedite vjerodajnice kao što je prikazano.

> db.auth('mongod_admin', 'P@ssword@2019')

Sada možete pokrenuti bilo koju komandu nakon toga. Pokušajmo još jednom navesti korisnike:

> show users

Ovog puta, sve je prošlo dobro pošto su date akreditive za autentifikaciju.

Za izlazak iz motora baze podataka pokrenite.

> exit

I to je sve za danas. Nadamo se da ste do sada već zadovoljni instaliranjem MongoDB4 na svoj CentOS 8 sistem i započeti s nekoliko neophodnih koraka.