Úvod
MongoDB je databázová aplikace používaná při vývoji webu, která poskytuje vysoký výkon, vysokou dostupnost a automatické škálování.
Tradiční databáze jako MySQL jsou relační, zatímco MongoDB ukládá data jako dokumenty JSON. To je zvláště užitečné pro ukládání složitých dat nebo úpravu dokumentů bez ovlivnění existujících datových struktur.
Tato příručka vám ukáže instalaci MongoDB na Ubuntu 18.04.
Předpoklady
- Systém s 64bitovým Ubuntu 18.04
- Uživatelský účet na Ubuntu s právy sudo
- Přístup k oknu terminálu/příkazovému řádku
Nainstalujte MongoDB z výchozích repozitářů Ubuntu (snadné)
Instalace MongoDB
Začněte aktualizací a aktualizací seznamů balíčků:
sudo apt-get update
sudo apt-get upgrade
Nechte proces dokončit a poté nainstalujte aplikaci MongoDB:
sudo apt-get install mongodb
Systém vás vyzve k potvrzení instalace zadáním y.
Instalaci můžete ověřit kontrolou verze:
mongod ––version
V tomto příkladu je verze MongoDB nainstalovaná z repozitářů v3.6.3 .
Zkontrolujte, zda je služba MongoDB spuštěna a povolena při spuštění:
sudo systemctl status mongodb
Výstup zobrazený na obrázku níže potvrzuje, že služba je aktivní.
Správa služby MongoDB
Ke správě služby MongoDB použijte tyto příkazy:
Zastavení MongoDB:
sudo systemctl stop mongodb
Chcete-li spustit MongoDB:
sudo systemctl start mongodb
Restartování MongoDB, když již běží (například pro použití změn konfigurace):
sudo systemctl restart mongodb
Chcete-li zabránit spuštění MongoDB při spouštění:
sudo systemctl disable mongodb
Chcete-li nastavit MongoDB, aby se spouštěl při spouštění:
sudo systemctl enable mongodB
Jak používat prostředí MongoDB
Chcete-li spustit prostředí MongoDB, zadejte:
mongo
Chcete-li opustit prostředí Mongo, použijte buď úhoz:
Ctrl-C
nebo příkaz:
quit()
Jak odinstalovat MongoDB
Chcete-li odinstalovat MongoDB, zadejte příkazy:
sudo systemctl stop mongodb
sudo apt purge mongodb
sudo apt autoremove
Nainstalujte MongoDB Community Edition (komplexní)
MongoDB Community Edition je hostována na serverech MongoDB. Instalace je náročnější, ale verze dostupná od vývojářů je vždy aktuální.
Prvním krokem je import veřejného klíče na server Ubuntu:
sudo wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add –
Systém potvrdí přidání klíče, jak je vidět níže.
Vytvořte soubor seznamu a přidejte úložiště MongoDB:
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
Obnovte databázi balíčků:
sudo apt-get update
Nainstalujte MongoDB:
sudo apt-get install mongodb-org
Ve výchozím nastavení správce balíčků Ubuntu stáhne a nainstaluje aktualizace, jakmile budou vydány. Pokud zaškrtnete verzi MongoDB, systém potvrdí, že jste nainstalovali nejnovější dostupnou verzi, v4.2.1.
Chcete-li uzamknout verzi, použijte následující:
echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections
Správa služby MongoDB Community Edition
Ke správě služby MongoDB použijte následující příkazy:
Zastavení MongoDB:
sudo systemctl stop mongod
Chcete-li spustit MongoDB:
sudo systemctl start mongod
Restartování MongoDB, když již běží (například pro použití změn konfigurace):
sudo systemctl restart mongod
Chcete-li zabránit spuštění MongoDB při spouštění:
sudo systemctl disable mongod
Chcete-li nastavit MongoDB, aby se spouštěl při spouštění:
sudo systemctl enable mongod
Komunitní edice používá mongod jako název služby. To je podstatný rozdíl oproti verzi ve výchozích úložištích. Jinak jsou příkazy totožné.
Jak používat prostředí MongoDB (Community Edition)
Chcete-li spustit prostředí MongoDB, zadejte následující:
mongo
Chcete-li opustit prostředí Mongo, použijte buď úhoz:
Ctrl-C
nebo zadejte následující příkaz:
quit()
Odinstalujte MongoDB Community Edition
Chcete-li odinstalovat MongoDB Community Editiion, zadejte příkazy:
sudo service mongod stop
sudo apt-get purge mongodb-org*
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb
Konfigurace brány firewall pro MongoDB
Pokud pracujete na stejném systému, který hostí MongoDB, můžete tento krok přeskočit.
MongoDB používá port 27017 komunikovat. Tento port můžete otevřít na vaší bráně firewall, ale umožníte tím neomezený přístup a nedoporučuje se to.
Místo toho zadejte IP adresu systému, který se připojí k MongoDB, a udělte přístup pouze konkrétní IP adrese. Chcete-li to provést, použijte následující:
sudo ufw allow from remote_server_IP/32 to any port 27017
Nahraďte IP_vzdáleného_serveru se skutečnou IP adresou systému, ze kterého se budete připojovat.
Ověřte změnu zadáním:
sudo ufw status
Zkontrolujte seznam – měli byste vidět povolený provoz na portu 27017 .
Upravte mongodb konfigurační soubor pro poslech jiné IP adresy:
sudo nano /etc/mongodb.conf
Najděte záznam s označením bind_ip a přidejte čárku a IP adresu vašeho vzdáleného systému:
bind_ip = 127.0.0.1, remote_server_IP
#port = 27017
Uložte soubor a restartujte službu MongoDB, jak je uvedeno výše.
Základní nastavení MongoDB
Otevřete shell Mongo zadáním následujícího:
mongo
Zobrazit seznam všech dostupných databází:
show dbs
MongoDB přichází s vypnutým ověřováním. Můžete to zabezpečit zapnutím ověřování, vytvořením uživatele root a hesla. Začněte přepnutím do databáze správce:
use admin
Vytvořte uživatele root zadáním následujícího:
db.createUser({user:"root", pwd:"complex_password", roles:[{role:"root", db:"admin"}]})
Opusťte Mongo shell stisknutím CTRL+C. Dále upravte mongodb.service soubor pro povolení ověřování:
sudo nano /lib/system/system/mongodb.service
Najděte sekci Service a pod ní ExecStart vstup.
Přidejte ––auth ihned za /usr/bin/mongod, takže to vypadá následovně:
ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS
Uložte soubor a ukončete. Znovu načtěte systém a služby MongoDB:
sudo systemctl daemon-reload
sudo systemctl restart mongodb
sudo systemctl status mongodb
Abyste se mohli přihlásit do Mongo, musíte ověřit svůj uživatelský účet. Zadejte následující:
mongo –u “root” –p ––authenticationDatabase “admin”
Po zobrazení výzvy zadejte heslo, které jste nastavili výše. Mongo shell by se měl otevřít jako předtím.