Kako instalirati MongoDB 4 u CentOS 8


MongoDB je popularan NoSQL mehanizam baze podataka koji se temelji na dokumentima i opće namjene koji pohranjuje podatke u JSON formatu. Besplatan je i otvorenog izvornog koda te se isporučuje sa skupom zgodnih i izvrsnih značajki kao što su pohrana datoteka, replikacija podataka, Ad-hoc upiti i balansiranje opterećenja da spomenemo samo neke. Neke od vodećih tvrtki koje su uključile MongoDB u svoje aplikacije uključuju Adobe, Facebook, Google, eBay i Coinbase.

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

Korak 1: Dodajte MongoDB spremište

Budući da MongoDB nije prisutan u zadanom repozitoriju CentOS 8, dodat ćemo ga ručno. Dakle, prvo stvorite datoteku spremišta kao što je prikazano.

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

Zalijepite konfiguraciju u nastavku i spremite 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 bit će instaliranje MongoDB pomoću sljedeće dnf naredbe.

dnf install mongodb-org

Zatim pokrenite i omogućite MongoDB da se pokrene pri dizanju pokretanjem donjih naredbi.

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 Mongod usluga doista sluša.

netstat -pnltu

Sjajno! potvrdili smo da MongoDB radi.

Korak 3: Pristupite MongoDB ljusci

Sada možete pristupiti MongoDB-ovoj ljusci jednostavnim izdavanjem naredbe:

mongo

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

Stvaranje MongoDBan administratorskog korisnika

Promijenimo sada brzinu i stvorimo administratorskog korisnika.
Uvijek je dobar savjet stvoriti korisnika administratora s povišenim ovlastima za obavljanje povišenih zadataka. Da biste to učinili, prvo pristupite ljusci MongoDB-a:

mongo

Zatim se prebacite na administratora baze podataka pokretanjem.

> use admin

Sada stvorite novog MongoDB korisnika pokretanjem donjeg koda.

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

Ako uspijete, trebali biste dobiti rezultat u nastavku.

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

Za popis stvorenih MongoDB korisnika, pokrenite.

> show users

Konfiguriranje provjere autentičnosti za MongoDB

Ovako, svi korisnici mogu pristupiti ljusci i izvršavati bilo koje naredbe, što se uopće ne preporučuje iz sigurnosnih razloga. Imajući to na umu, moramo stvoriti autentifikaciju za admin korisnika kojeg smo upravo stvorili kako bismo spriječili druge korisnike da neovlašteno izvode naredbe.

Da biste omogućili provjeru autentičnosti, 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"

Spremite i izađite iz konfiguracijske datoteke.

Kako bi promjene stupile na snagu, ponovno učitajte sustav i ponovno pokrenite MongoDB.

systemctl daemon-reload
systemctl restart mongod

Ako sada pokušate ispisati korisnike bez provjere autentičnosti, trebali biste dobiti prikazanu pogrešku.

Za autentifikaciju jednostavno proslijedite vjerodajnice kao što je prikazano.

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

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

> show users

Ovaj put je sve prošlo dobro jer su dostavljene vjerodajnice za autentifikaciju.

Za izlazak iz pogona baze podataka pokrenite.

> exit

I to je sve za danas. Nadamo se da ste do sada dobro instalirali MongoDB4 na svoj CentOS 8 sustav i počeli s nekoliko potrebnih koraka.