Jedním z klíčových konceptů v MongoDB je správa databází. Důležité aspekty, jako je zabezpečení, zálohování, přístup k databázím, jsou všechny důležité pojmy, pokud jde o správu databáze.
V tomto výukovém programu se naučíte -
- Přehled zabezpečení databáze
- Postupy zálohování - mongodump
- Monitorování Mongodb
- Úvahy o indexování a výkonu
Přehled zabezpečení MongoDB
MongoDB má schopnost definovat bezpečnostní mechanismy pro databáze. Ve výchozím nastavení by nikdo nechtěl, aby měl každý otevřený přístup ke každé databázi v MongoDB, proto je důležitý požadavek mít nějaký druh bezpečnostního mechanismu v MongoDB.
Níže jsou uvedeny osvědčené postupy při implementaci zabezpečení v databázích
-
Enable access control - Create users so that all applications and users are forceded to have some kind of authentication mechanism when accessing databases on MongoDB.
-
Konfigurace řízení přístupu na základě rolí - Někdy může existovat logické seskupení oprávnění, která mohou být požadována a která mohou být zahrnuta do rolí. K těmto rolím lze poté přiřadit uživatele.
-
Zkuste nakonfigurovat MongoDB tak, aby používal nějaký šifrovací protokol, jako je TLS nebo SSL. Tyto protokoly lze použít k šifrování provozu, který proudí mezi klientem a prostředím mongo DB.
-
Konfigurace auditu - Správci obvykle potřebují vědět, kdo co dělá, což pomáhá při pozdější analýze problémů. Nejlepším způsobem je povolit auditování v MongoDB.
-
Spusťte instanci serveru MongDB se samostatným ID uživatele, který má přístup k požadovaným prostředkům v prostředí serveru.
Postupy zálohování Mongodb - mongodump
Při práci s MongDB je důležité vždy zajistit postup zálohování pro případ, že dojde k poškození dat v MongoDB z jakéhokoli důvodu.
Níže jsou uvedeny mechanismy zálohování dostupné v rámci MongoDB
- Zálohování kopírováním základních datových souborů - Toto je pravděpodobně nejjednodušší mechanismus, vše, co je třeba udělat, je zkopírovat datové soubory, na kterých je MongoDB, a zkopírovat je na jiné místo, které by v ideálním případě mělo být jiným serverem.
- Zálohujte databázi pomocí mongodump - nástroj mongodump čte data z databáze MongoDB a vytváří vysoce věrné soubory BSON. Je třeba vzít v úvahu, že pokud má datová sada velký objem, může být mongodump velmi náročný na zdroje, takže ke zmírnění tohoto problému by měl být obslužný program spuštěn na sekundárním serveru.
- Záloha MongoDB Cloud Manager - MongoDB Cloud Manager neustále zálohuje sady replik MongoDB a shardované clustery čtením dat oplog z prostředí MongoDB. MongoDB Cloud Manager může vytvořit bodové obnovení v čase tím, že uloží data oplogu, aby mohl kdykoli vytvořit obnovení pro konkrétní sadu replik nebo shardovaný cluster.
Monitorování Mongodb
Monitorování je jednou z nejdůležitějších administrativních činností v MongoDB. Důvodem je, že můžete být proaktivnější sledováním prostředí ohledně možných problémů, které by se mohly objevit.
Níže uvádíme několik příkladů implementace monitorování
- mongostat vám řekne, kolik časových databázových operací, jako je vkládání, dotazování, aktualizace, mazání atd., se skutečně na serveru vyskytne. To poskytne dobrou představu o tom, kolik zátěže server zpracovává, a ukáže, zda potřebujete další zdroje na serveru nebo možná další servery k distribuci zátěže.
- mongotop sleduje a hlásí aktuální aktivitu čtení a zápisu instance MongoDB a hlásí tyto statistiky na základě jednotlivých sbírek.
- MongoDB poskytuje webové rozhraní, které zpřístupňuje diagnostické a monitorovací informace na jednoduché webové stránce. Lze procházet níže uvedenou adresu URL na místním serveru a otevřít nástroj pro správu webu http: // localhost: 28017
- Příkaz serverStatus nebo db.serverStatus () z prostředí Shell vrací přehled stavu databáze s podrobnostmi o využití disku, využití paměti, připojení navázaných na prostředí MongoDB atd.
Aspekty indexování a výkonu MongoDB
- Indexy jsou velmi důležité v jakékoli databázi a lze je použít ke zvýšení efektivity vyhledávacích dotazů v MongoDB. Pokud v dokumentu neustále provádíte vyhledávání, je lepší přidat indexy do polí dokumentu, která se používají v kritériích vyhledávání.
- Pokuste se vždy omezit počet vrácených výsledků dotazu. Předpokládejme, že v dokumentu máte 2 názvy polí, ale chcete pouze vidět 2 pole z dokumentu. Pak se ujistěte, že váš dotaz cílí pouze na zobrazení 2 požadovaných polí a ne všech polí.
- Chcete-li zobrazit určité hodnoty polí, použijte tato pole pouze v dotazu. Pokud nejsou požadována, neprovádějte dotaz na všechna pole v kolekci.
Souhrn:
- Je velmi důležité implementovat zabezpečení do databází, aby byla zajištěna bezpečnost dat v databázi.
- Uživatelé lze vytvářet v databázi pomocí příkazu createUser. Uživatelům lze přiřadit konkrétní role, které jim poskytnou konkrétní oprávnění k samotné databázi.
- Je možné přidat správce pro všechny databáze, pouze pro konkrétní databáze. Toho lze dosáhnout přidělením role userAdmin nebo userAdminAnyDatabase.
- Vždy si zálohujte prostředí MongoDB, aby v případě jakékoli katastrofy byla data snadno obnovitelná.
- Vždy sledujte, zda je vaše prostředí MongoDB proaktivnější, a podívejte se na problémy dříve, než k nim dojde.