Jedan od ključnih pojmova u MongoDB-u je upravljanje bazama podataka. Važni aspekti poput sigurnosti, sigurnosne kopije, pristupa bazama podataka svi su važni koncepti kada je riječ o administraciji baza podataka.
U ovom vodiču naučit ćete -
- Pregled sigurnosti baze podataka
- Postupci sigurnosne kopije - mongodump
- Mongodb praćenje
- Indeksiranje i razmatranja izvedbe
Pregled sigurnosti MongoDB-a
MongoDB ima sposobnost definiranja sigurnosnih mehanizama za baze podataka. Prema zadanim postavkama ne bi se željelo da svi imaju otvoren pristup svakoj bazi podataka u MongoDB-u, stoga je važan zahtjev za postojanjem neke vrste sigurnosnog mehanizma u MongoDB-u.
Slijede najbolje prakse prilikom primjene sigurnosti u bazama podataka
-
Omogućite kontrolu pristupa - stvorite korisnike tako da sve aplikacije i korisnici imaju prisilu da imaju nekakav mehanizam provjere autentičnosti prilikom pristupa bazama podataka na MongoDB-u.
-
Konfigurirajte kontrolu pristupa zasnovanu na ulogama - Ponekad može biti potrebno logičko grupiranje dozvola koje se mogu udruživati u uloge. Korisnici se tada mogu dodijeliti tim ulogama.
-
Pokušajte konfigurirati MongoDB da koristi neku vrstu protokola šifriranja kao što je TLS ili SSL. Ovi se protokoli mogu koristiti za šifriranje prometa koji teče između klijenta i mongo DB okruženja.
-
Konfigurirajte reviziju - Administratori obično moraju znati tko što radi, što pomaže u kasnijoj analizi problema. Najbolji način je omogućiti reviziju u MongoDB-u.
-
Pokrenite instancu MongDB poslužitelja s zasebnim korisničkim ID-om koji ima pristup potrebnim resursima u okolini poslužitelja.
Mongodb sigurnosne kopije - mongodump
Kada radite s MongDB-om, važno je uvijek osigurati da postoji postupak sigurnosne kopije u slučaju da se podaci iz MongoDB-a oštete iz bilo kojeg razloga.
Ispod su sigurnosni mehanizmi dostupni u MongoDB-u
- Sigurnosna kopija kopiranjem osnovnih podatkovnih datoteka - Ovo je vjerojatno najlakši mehanizam, sve što treba učiniti je kopirati podatkovne datoteke na kojima se nalazi MongoDB i kopirati ih na drugo mjesto koje bi u idealnom slučaju trebalo biti drugi poslužitelj.
- Napravite sigurnosnu kopiju baze podataka pomoću mongodumpa - alat mongodump čita podatke iz MongoDB baze podataka i stvara BSON datoteke visoke vjernosti. Ono što treba uzeti u obzir jest da ako je skup podataka velik po volumenu, mongodump može biti vrlo zahtjevan za resurse, pa bi za ublažavanje ovog problema uslužni program trebao biti pokrenut na sekundarnom poslužitelju.
- Sigurnosna kopija MongoDB Cloud Managera - MongoDB Cloud Manager kontinuirano izrađuje sigurnosne kopije skupova replika MongoDB i oštrih klastera čitajući oplog podatke iz MongoDB okruženja. MongoDB Cloud Manager može stvoriti oporavak u trenutku pohranom podataka oploga tako da može stvoriti obnavljanje u bilo kojem trenutku u vremenu za određeni skup replika ili izoštreni klaster.
Mongodb praćenje
Nadzor je jedna od najvažnijih administrativnih aktivnosti u MongoDB-u. To je zato što možete biti proaktivniji nadzirući okoliš zbog mogućih problema koji bi se mogli pojaviti.
Ispod su neki primjeri za provedbu praćenja
- mongostat će vam reći koliko se vremenskih operacija baze podataka poput umetanja, upita, ažuriranja, brisanja itd. stvarno događa na poslužitelju. To će dati dobru ideju o tome koliko opterećenja poslužitelj obrađuje i naznačit će vam trebaju li dodatni resursi na poslužitelju ili možda dodatni poslužitelji za distribuciju tereta.
- mongotop prati i izvještava o trenutnoj aktivnosti čitanja i pisanja instance MongoDB-a i izvještava o ovoj statistici po zbirci.
- MongoDB nudi web sučelje koje izlaže dijagnostičke i nadzorne informacije na jednostavnoj web stranici. Možete pregledati donji URL na vašem lokalnom poslužitelju kako biste otvorili uslužni program za web upravljanje http: // localhost: 28017
- Naredba serverStatus ili db.serverStatus () iz ljuske vraća pregled statusa baze podataka s detaljima o upotrebi diska, upotrebi memorije, vezama uspostavljenim u MongoDB okruženju itd.
MongoDB razmatranje indeksiranja i izvedbe
- Indeksi su vrlo važni u bilo kojoj bazi podataka i mogu se koristiti za poboljšanje učinkovitosti upita za pretraživanje u MongoDB-u. Ako neprestano pretražujete u dokumentu, onda je bolje dodati indekse na polja dokumenta koja se koriste u kriterijima pretraživanja.
- Pokušajte uvijek ograničiti broj vraćenih rezultata upita. Pretpostavimo da u dokumentu imate 2 imena polja, ali samo želite vidjeti 2 polja iz dokumenta. Zatim se pobrinite da vaš upit cilja samo dva polja koja su vam potrebna, a ne sva polja.
- Ako želite pregledati određene vrijednosti polja, tada upotrijebite samo ona polja u upitu. Ne postavljajte upite za sva polja u zbirci ako nisu potrebna.
Sažetak:
- Vrlo je važno implementirati sigurnost u baze podataka kako bi se osiguralo da podaci u bazi podataka budu sigurni.
- Korisnici se mogu stvoriti u bazi podataka naredbom createUser. Korisnicima se mogu dodijeliti određene uloge kako bi im se dale posebna dopuštenja na samoj bazi podataka.
- Administratori se mogu dodati za sve baze podataka samo za određene baze podataka. To se postiže davanjem uloge userAdmin ili userAdminAnyDatabase.
- Uvijek napravite sigurnosnu kopiju svog MongoDB okruženja kako bi se podaci u slučaju katastrofe mogli lako obnoviti.
- Uvijek pratite svoje MongoDB okruženje da bude proaktivnije i pogledajte probleme prije nego što se pojave.