MongoDB je NoSQL databáze, která nabízí vysoký výkon, vysokou dostupnost a automatické škálování podnikové databáze. MongoDB je databáze NoSQL, takže k vkládání a načítání dat nemůžete použít SQL (Structured Query Language) a neukládá data do tabulek jako MySQL nebo Postgres. Data jsou uložena ve struktuře „dokumentu“ ve formátu JSON (v MongoDB nazývaném BSON). MongoDB byl poprvé představen v roce 2009 a v současnosti je vyvíjen společností MongoDB Inc.
"MongoDB poskytuje pouze balíčky pro 64bitové LTS (dlouhodobá podpora) vydání Ubuntu. Například 12.04 LTS (přesné), 14.04 LTS (důvěryhodné), 16.04 LTS (xenial) a tak dále. " web mongodb.
Předpoklady
- Ubuntu Server 16.04 – 64 bit
- Oprávnění uživatele root
Co budeme dělat v tomto tutoriálu:
- Nainstalujte MongoDB
- Nakonfigurujte MongoDB
- Závěr
Instalovat MongoDB na Ubuntu 16.04
Krok 1 – Import veřejného klíče
GPG klíče distributora softwaru jsou vyžadovány správcem balíčků Ubuntu apt (Advanced Package Tool), aby byla zajištěna konzistence a autentičnost balíčku. Spuštěním tohoto příkazu importujete klíče MongoDB na váš server.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
Krok 2 – Vytvořte soubor zdrojového seznamu MongoDB
Vytvořte soubor seznamu MongoDB v /etc/apt/sources.list.d/ pomocí tohoto příkazu:
echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
Krok 3 – Aktualizace úložiště
aktualizujte úložiště pomocí příkazu apt:
sudo apt-get update
Krok 4 – Instalace MongoDB
Nyní můžete nainstalovat MongoDB zadáním tohoto příkazu:
sudo apt-get install -y mongodb-org
Musíme vytvořit nový servisní soubor MongoDB systemd v adresáři '/lib/systemd/system'. Přejděte do tohoto adresáře a vytvořte nový soubor služby MongoDB 'mongod.service' pomocí editoru vim.
cd /lib/systemd/system/
vim mongod.service
Vložte skript níže:
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
Documentation=https://docs.mongodb.org/manual
[Service]
User=mongodb
Group=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
Uložte soubor a ukončete.
Nyní aktualizujte službu systemd pomocí příkazu níže:
systemctl daemon-reload
Spusťte MongoDB a přidejte jej jako službu, která se má spustit při spouštění:
systemctl spustit mongod
systemctl povolit mongod
Nyní zkontrolujte, zda byl MongoDB spuštěn na portu 27017 pomocí příkazu netstat.
netstat -plntu
Konfigurace uživatelského jména a hesla MongoDB
Když jsou nainstalovány balíčky MongoDB, můžete nakonfigurovat uživatelské jméno a heslo pro databázový server:
Krok 1 – Otevřete mongo shell
Než nastavíte uživatelské jméno a heslo pro MongoDB, musíte na svém serveru otevřít shell MongoDB. Můžete se přihlásit zadáním:
mongo
Pokud se zobrazí chyba Selhala globální inicializace:BadValue Neplatné nebo není nastaveno žádné uživatelské národní prostředí. Ujistěte se, že jsou proměnné prostředí LANG a/nebo LC_* správně nastaveny, zkuste příkaz:
export LC_ALL=C
mongo
Krok 2 – Přepnutí na správce databáze
Jakmile jste v prostředí MongoDB, přepněte se do databáze s názvem admin :
use admin
Krok 3 – Vytvoření uživatele root
Vytvořte uživatele root pomocí tohoto příkazu:
db.createUser({user:"admin", pwd:"admin123", roles:[{role:"root", db:"admin"}]})
Popis: Vytvořte si uživatele admin s heslem admin123 a mějte oprávnění/roli jako root a databáze je admin .
Nyní zadejte exit pro ukončení prostředí MongoDB.
Krok 4 – Povolte ověřování mongodb
Pomocí editoru upravte soubor služby mongodb '/lib/systemd/system/mongod.service'.
vim /lib/systemd/system/mongod.service
Na stránce 'ExecStart ' řádek 9, přidejte novou možnost '--auth '.
ExecStart=/usr/bin/mongod --quiet --auth --config /etc/mongod.conf
Uložte soubor služby a ukončete vim.
Znovu načtěte službu systemd:
systemd daemon-reload
Krok 5 – Restartujte MongoDB a zkuste se připojit
Nyní restartujte MongoDB a připojte se k vytvořenému uživateli.
sudo service mongod restart
a připojte se k prostředí MongoDB pomocí tohoto příkazu:
mongo -u admin -p admin123 --authenticationDatabase admin
a výstup uvidíte takto:
Závěr
Známá databáze NoSQL, která nabízí vysoký výkon, vysokou dostupnost a automatické škálování, je MongoDB . Liší se od RDBMS, jako je MySQL, PostgreSQL a SQLite, protože nepoužívá SQL k nastavení a načítání dat. MongoDB ukládá data do `dokumentů` s názvem BSON (binární reprezentace JSON s dalšími typy informací). MongoDB je k dispozici pouze pro 64bitovou verzi Dlouhodobá podpora Vydání Ubuntu.