sql >> Databáze >  >> NoSQL >> MongoDB

Jak nainstalovat MongoDB na Ubuntu 18.04

MongoDB je open-source, moderní systém pro správu databází dokumentů navržený pro vysoce výkonnou perzistenci dat, vysokou dostupnost a také automatické škálování, založený na nejmodernější technologii NoSQL . V části MongoDB , záznam je dokument, což je datová struktura, která se skládá z párů polí a hodnot (dokumenty MongoDB jsou srovnatelné s objekty JSON).

Protože poskytuje vysoký výkon a skvělé funkce škálovatelnosti, používá se pro vytváření moderních aplikací, které vyžadují výkonné, kritické a vysoce dostupné databáze.

V tomto článku vysvětlíme, jak nainstalovat MongoDB , spravovat jeho službu a nastavit základní ověřování na Ubuntu 18.04 .

Důležité :Měli byste si uvědomit, že vývojáři MongoDB nabízí pouze balíčky pro 64bitové LTS (dlouhodobá podpora) Vydání Ubuntu, jako je 14.04 LTS (důvěryhodný), 16,04 LTS (xenial) a tak dále.

Krok 1:Instalace MongoDB na Ubuntu 18.04

1. Oficiální úložiště softwarových balíčků Ubuntu přichází s nejnovější verzí MongoDB a lze jej snadno nainstalovat pomocí správce balíčků APT.

Nejprve aktualizujte mezipaměť balíčků systémového softwaru, aby měla nejnovější verzi výpisů úložiště.

$ sudo apt update

2. Dále nainstalujte balíček MongoDB, který obsahuje několik dalších balíčků, jako jsou mongo-tools , mongodb-klienti , mongodb-server a mongodb-server-core .

$ sudo apt install mongodb

3. Jakmile ji úspěšně nainstalujete, služba MongoDB se automaticky spustí přes systemd a proces naslouchá na portu 27017 . Jeho stav můžete ověřit pomocí příkazu systemctl, jak je znázorněno.

$ sudo systemctl status mongodb

Krok 2:Správa služby MongoDB

4. MongoDB instalace přichází jako služba systemd a lze ji snadno spravovat pomocí standardních příkazů systemd, jak je znázorněno.

Chcete-li zastavit běh služby MongoDB, spusťte následující příkaz.

$ sudo systemctl stop mongodb	

Chcete-li spustit službu MongoDB, zadejte následující příkaz.

$ sudo systemctl start mongodb

Chcete-li restartovat službu MongoDB, zadejte následující příkaz.

$ sudo systemctl restart mongodb	

Chcete-li zakázat automaticky spouštěnou službu MongoDB, zadejte následující příkaz.

$ sudo systemctl disable mongodb	

Chcete-li službu MongoDB znovu povolit, zadejte následující příkaz.

$ sudo systemctl enable mongodb	

Krok 3:Povolte vzdálený přístup MongoDB na bráně firewall

5. Ve výchozím nastavení MongoDB běží na portu 27017 , abyste umožnili přístup odkudkoli.

$ sudo ufw allow 27017

Ale povolení přístupu k MongoDB odkudkoli poskytuje neomezený přístup k datům databáze. Je tedy lepší udělit přístup ke konkrétnímu umístění IP adresy výchozímu portu MongoDB pomocí následujícího příkazu.

$ sudo ufw allow from your_server_IP/32 to any port 27017 
$ sudo ufw status

6. Ve výchozím nastavení port 27017 naslouchá na místní adrese 127.0.0.1 pouze. Chcete-li povolit vzdálená připojení MongoDB, musíte přidat IP adresu svého serveru do /etc/mongodb.conf konfigurační soubor, jak je znázorněno.

bind_ip = 127.0.0.1,your_server_ip
#port = 27017

Uložte soubor, ukončete editor a restartujte MongoDB.

$ sudo systemctl restart mongodb

Krok 4:Vytvořte uživatele a heslo root databáze MongoDB

7. Ve výchozím nastavení MongoDB přichází s deaktivovanou autentizací uživatele, a proto se spouští bez řízení přístupu. Chcete-li spustit mongo shell , spusťte následující příkaz.

$ mongo 

8. Jakmile se připojíte k mongo shellu , můžete zobrazit seznam všech dostupných databází pomocí následujícího příkazu.

> show dbs

9. Chcete-li povolit řízení přístupu ve vašem nasazení MongoDB pro vynucení ověřování; vyžaduje, aby se uživatelé identifikovali pokaždé, když se připojí k databázovému serveru.

MongoDB používá Ověřovací mechanismus odezvy Salted Challenge (SCRAM ) ve výchozím nastavení mechanismus ověřování. Pomocí SCRAM , MongoDB ověřuje dodané přihlašovací údaje uživatele proti jménu, heslu a autentizační databázi uživatele (databáze, ve které byl uživatel vytvořen, a spolu se jménem uživatele slouží k identifikaci uživatele).

Musíte vytvořit správce uživatelů (obdobně jako uživatel root pod MySQL/MariaDB ) v databázi správce. Tento uživatel může spravovat uživatele a role, jako je vytvářet uživatele, udělovat nebo odebírat role uživatelům a vytvářet nebo upravovat celní role.

Nejprve se přepněte na správce databázi a poté vytvořte uživatele root pomocí následujících příkazů.

> use admin 
> db.createUser({user:"root", pwd:"[email protected]!#@%$admin1", roles:[{role:"root", db:"admin"}]})

Nyní ukončete mongo shell a povolte ověřování, jak je vysvětleno dále.

10. mongodb instance byla spuštěna bez --auth možnost příkazového řádku. Musíte povolit ověřování uživatelů úpravou /lib/systemd/system/mongod.service soubor, nejprve soubor otevřete pro úpravy.

$ sudo vim /lib/systemd/system/mongodb.service 

Pod [Service] config, najděte parametr ExecStart .

ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

Změňte jej na následující:

ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

Uložte soubor a ukončete jej.

11. 8. Po provedení změn v konfiguračním souboru spusťte „systemctl daemon-reload ‘ znovu načíst jednotky a restartovat službu MongoDB a zkontrolovat její stav následovně.

$ systemctl daemon-reload
$ sudo systemctl restart mongodb	
$ sudo systemctl status mongodb	

12. Nyní, když se pokusíte připojit k mongodb , musíte se ověřit jako uživatel MongoDB. Například:

$ mongo -u "root" -p --authenticationDatabase "admin"

Poznámka :Nedoporučuje se zadávat heslo na příkazový řádek, protože bude uloženo v souboru historie shellu a útočník si jej může později prohlédnout.

To je vše! MongoDB je moderní systém správy databází bez SQL s otevřeným zdrojovým kódem, který poskytuje vysoký výkon, vysokou dostupnost a automatické škálování.

V tomto článku jsme vysvětlili, jak nainstalovat MongoDB a jak s ním začít v Ubuntu 18.04 . Pokud máte nějaké dotazy, kontaktujte nás pomocí níže uvedeného formuláře pro komentáře.


  1. Jak převést seznam casbah mongodb na json ve scala / play

  2. Jak vložím HTML do Mongodb?

  3. Jak mohu vytvořit program pomocí c++ ovladače mongodb?

  4. Získání MongoDB v Linuxu pro poslech vzdálených připojení