MongoDB je svobodná databáze dokumentů s otevřeným zdrojovým kódem. Patří do rodiny databází nazývaných NoSQL, které se liší od tradičních databází SQL založených na tabulkách, jako jsou MySQL a PostgreSQL.
V MongoDB jsou data uložena ve flexibilních dokumentech typu JSON, jejichž pole se mohou v jednotlivých dokumentech lišit. Nevyžaduje předdefinované schéma a strukturu dat lze v průběhu času měnit.
V tomto návodu se budeme zabývat postupem instalace a konfigurace nejnovější verze MongoDB Community Edition na počítači s Ubuntu 18.04 z oficiálních repozitářů MongoDB.
Předpoklady #
Před pokračováním v tomto návodu se ujistěte, že jste přihlášeni jako uživatel s právy sudo.
Instalace MongoDB #
V době psaní tohoto článku je nejnovější verzí MongoDB verze 4.0.
Před pokračováním v instalačním procesu přejděte do sekce Install on Ubuntusection dokumentace MongoDB a zkontrolujte, zda není k dispozici nová verze.
Následující kroky popisují, jak nainstalovat MongoDB na server Ubuntu:
-
Přidejte klíč MongoDB GPG do systému pomocí následujícího příkazu:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Po importu klíče přidejte úložiště MongoDB pomocí:
sudo add-apt-repository 'deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'
Pokud se zobrazí chybová zpráva s hlášením
add-apt-repository command not found
, nainstalujte balíčeksoftware-properties-common
.Chcete-li nainstalovat starší verzi MongoDB, nahraďte
4.0
preferovanou verzí. -
Aktualizujte seznam balíčků a nainstalujte metabalíček
mongodb-org
zadáním:sudo apt update
sudo apt install mongodb-org
Následující balíčky budou nainstalovány do vašeho systému jako součást balíčku
mongodb-org
:-
mongodb-org-server
– Démonmongod
a odpovídající init skripty a konfigurace. -
mongodb-org-mongos
– Démonmongos
. -
mongodb-org-shell
– Mongo shell je interaktivní rozhraní jazyka JavaScript pro MongoDB. Slouží k provádění správních úloh prostřednictvím příkazového řádku. -
mongodb-org-tools
– Obsahuje několik nástrojů MongoDB pro import a export dat, statistiky a také další nástroje.
-
-
Po dokončení instalace spusťte démona MongoDB a povolte jeho spuštění při startu zadáním příkazu:
sudo systemctl start mongod
sudo systemctl enable mongod
-
Pro ověření, zda instalace proběhla úspěšně, se připojíme k databázovému serveru MongoDB pomocí nástroje
mongo
a vypíšeme stav připojení:mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Výstup bude vypadat takto:
MongoDB shell version v4.0.10connecting to: mongodb://127.0.0.1:27017MongoDB server version: 4.0.10{ "authInfo" : { "authenticatedUsers" : , "authenticatedUserRoles" : }, "ok" : 1}
Hodnota
1
pro poleok
znamená úspěch.
Konfigurace MongoDB #
MongoDB používá konfigurační soubor ve formátu YAML, /etc/mongod.conf
. Instanci MongoDB můžete nakonfigurovat úpravou tohoto souboru.
Výchozí konfigurační nastavení jsou pro většinu uživatelů dostatečná. Pro produkční prostředí se však doporučuje odkomentovat část zabezpečení a povolit autorizaci, jak je uvedeno níže:
security: authorization: enabled
Volba authorization
povoluje řízení přístupu na základě rolí (RBAC)které reguluje přístup uživatelů ke zdrojům a operacím databáze. Pokud je tato možnost zakázána, každý uživatel bude mít přístup ke všem databázím a bude moci provádět libovolné akce.
Po provedení změn v konfiguračním souboru MongoDB restartujte službu mongod pomocí:
sudo systemctl restart mongod
Další informace o možnostech konfigurace dostupných v MongoDB 4.0, navštivte stránku Configuration File Optionsdocumentation.
Vytvoření administrátorského uživatele MongoDB #
Pokud jste povolili ověřování MongoDB, vytvořte administrátorského uživatele MongoDB, který bude sloužit k přístupu a správě instance MongoDB.
Nejprve přistupte k shellu Mongo pomocí:
mongo
Jakmile jste uvnitř shellu MongoDB, zadejte následující příkaz pro připojení k databázi admin
:
use admin
switched to db admin
Vydejte následující příkaz pro vytvoření nového uživatele s názvem mongoAdmin
a rolí userAdminAnyDatabase
:
db.createUser( { user: "mongoAdmin", pwd: "changeMe", roles: })
Successfully added user: {"user" : "mongoAdmin","roles" : }
Ukončete mongo shell příkazem:
quit()
Pro otestování změn přistupte do mongo shellu pomocí dříve vytvořeného administrátorského uživatele:
mongo -u mongoAdmin -p --authenticationDatabase admin
use admin
switched to db admin
Nyní vypište uživatele příkazem:
show users
{"_id" : "admin.mongoAdmin","user" : "mongoAdmin","db" : "admin","roles" : ,"mechanisms" : }
Můžete také zkusit přistoupit k shellu mongo bez argumentů ( stačí zadat mongo
) a zjistit, zda můžete vypsat uživatele pomocí stejných příkazů jako výše.
Závěr #
Dozvěděli jste se, jak nainstalovat a nakonfigurovat MongoDB 4.0 na serveru Ubuntu 18.04. Nainstalujte a nakonfigurujte MongoDB 4.0 na svém serveru. Další informace o tomto tématu naleznete v příručce MongoDB 4.0.