GNU/Linux >> Znalost Linux >  >> Panels >> Panels

Jak nainstalovat MongoDB na Ubuntu 18.04

V tomto článku vám ukážeme, jak nainstalovat MongoDB, spravovat jeho služby a povolit vzdálená připojení na Ubuntu 18.04 VPS.

MongoDB je open-source systém pro správu databází, který patří do rodiny NoSQL. NoSQL se liší od tradičních tabulkových databází SQL (MySQL a PostgreSQL) – data jsou uložena ve flexibilních dokumentech typu JSON bez předem definovaného schématu, což umožňuje provádět velké změny v databázích bez prostojů. Začněme s instalací.

Krok 1:Připojte se k serveru

Než začneme, musíte se připojit k serveru přes SSH jako uživatel root. Chcete-li to provést, použijte následující příkaz:

ssh root@IP_Address -p port_number

Budete muset nahradit IP_Address a port_number vaší skutečnou IP adresou serveru a číslem portu SSH. Pokud nemáte přístup k účtu root, můžete místo něj použít účet s právy sudo.

Po přihlášení se pomocí následujících příkazů ujistěte, že je váš server aktuální:

sudo apt update
sudo apt upgrade

Krok 2:Instalace MongoDB

Oficiální repozitáře softwarových balíčků Ubuntu jsou dodávány s verzí 3.6.3 MongoDB, ale v tomto článku nainstalujeme MongoDB 4.0, což je nejnovější dostupná verze. Vždy však můžete zkontrolovat, zda je nová verze MongoDB k dispozici na jejich oficiálních stránkách.

Abychom mohli nainstalovat MongoDB 4.0 Community Edition na Ubuntu, musíme importovat veřejný klíč používaný systémem správy balíčků. Můžeme to udělat pomocí následujícího příkazu:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

Protože nyní máme klíč importovaný, můžeme přidat úložiště MongoDB s tímto dalším řádkem:

sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

Poté aktualizujeme seznam balíčků:

sudo apt update

V tomto okamžiku je úložiště povoleno a seznam balíčků je aktualizován – nyní můžeme pokračovat v instalaci balíčku MongoDB CE zadáním následujícího příkazu:

sudo apt install mongodb-org

Balíčky mongodb-org-server, mongodb-org-mongos, mongodb-org-shell a mongodb-org-tools budou nainstalovány na váš systém jako součást balíčku mongodb-org.

Na serveru je nyní nainstalována MongoDB 4.0 Community Edition. Poté musíme spustit službu MongoDB a povolit její spuštění při spouštění.

sudo systemctl start mongod
sudo systemctl enable mongod

Pro ověření instalace MongoDB můžeme zkontrolovat stav připojení zadáním příkazu:

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

Měli byste mít výstup podobný tomuto:

MongoDB shell version v4.0.6
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("c806e0e1-ab30-4d41-b882-026c09d2893f") }
MongoDB server version: 4.0.6
{
"authInfo" : {
"authenticatedUsers" : [ ],
"authenticatedUserRoles" : [ ]
},
"ok" : 1
}

Gratulujeme, úspěšně jste nainstalovali MongoDB na svůj server. Dalším krokem bude konfigurace vašeho serveru MongoDB.

Krok 3:Konfigurace MongoDB

Instanci MongoDB můžeme nakonfigurovat úpravou souboru mongod.conf soubor, který se nachází v /etc/ . K úpravě souboru použijeme Nano, ale pokud chcete, můžete použít preferovaný textový editor.

sudo nano /etc/mongod.conf

Abychom umožnili vzdálená připojení a lépe zabezpečili MongoDB, provedeme některé změny v konfiguračním souboru. MongoDB ve výchozím nastavení naslouchá pouze připojení na portu 27017 na localhost (IP 127.0.0.1). Chcete-li povolit vzdálené připojení MongoDB, musíte do konfiguračního souboru MongoDB přidat IP adresu vašeho serveru. Toto je ukázáno jako příklad níže:

bind_ip = 127.0.0.1, your_server_ip
#port = 27017

security:
authorization: enabled

Zahrnuli jsme také možnost autorizace, která bude regulovat přístup uživatelů k databázím MongoDB. Pokud není povolena možnost autorizace, bude mít každý uživatel přístup ke všem databázím MongoDB a může provádět jakoukoli akci, což představuje bezpečnostní riziko. Po uložení změn v konfiguračním souboru MongoDB je třeba restartovat službu MongoDB pomocí následujícího příkazu, aby se změny projevily:

sudo systemctl restart mongod

Krok 4:Vytvoření administrativního uživatele MongoDB

Protože jsme nakonfigurovali server MongoDB a povolili možnost ověřování, musíme nyní vytvořit administrativní uživatelský účet MongoDB, který bude použit ke správě instance MongoDB.

Pro přístup k mongo shellu napište:

mongo

Dále použijeme následující příkaz pro připojení k databázi správce:

use admin

Výstup:

switched to db admin

Pro vytvoření nového administrativního uživatele s názvem mongo_admin s rolí userAdminAnyDatabase provedeme následující příkaz:

db.createUser(
{
user: "mongo_admin", 
pwd: "Strong_Pas$w0rd", 
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)

A dostaneme to jako výstup:

Successfully added user: {
"user" : "mongo_admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}

Nezapomeňte nahradit „Strong_Pas$w0rd“ skutečným silným heslem. Nyní můžeme opustit mongo shell:

quit()

Krok 5:Ověření přístupu administrátora

Pro potvrzení změn přistoupíme k mongo shellu pomocí uživatele mongo_admin, kterého jsme vytvořili:

mongo -u mongo_admin -p --authenticationDatabase admin

use admin

show users

A pokud jste dosud provedli všechny kroky, měli byste mít následující výstup:

Výstup:

> use admin
switched to db admin
> show users
{
"_id" : "admin.mongo_admin",
"user" : "mongo_admin",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
}

Můžete se také pokusit vypsat seznam uživatelů při přístupu k mongo shellu (bez argumentů) a použít stejné příkazy, jaké jsme používali dříve.

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

V tomto kroku poskytneme vzdálený přístup k naší MongoDB tím, že jej povolíme v našem firewallu. Pokud na svém serveru nepoužíváte žádnou bránu firewall, můžete tento krok přeskočit. Výchozí port MongoDB je 27017, takže v našich příkladech vám ukážeme, jak povolit tento port přes váš firewall.

Pokud používáte UFW (Uncomplicated Firewall), můžete použít následující tipy, jak umožnit vzdálený přístup MongoDB.

Chcete-li povolit přístup k MongoDB na jeho výchozím portu (27017) odkudkoli, můžete použít následující příkaz:

sudo ufw allow 27017

Chcete-li povolit přístup k MongoDB na jeho výchozím portu 27017 pouze z konkrétní IP adresy, můžete použít příkaz:

sudo ufw allow from allowed_IP_address/32 to any port 27017

Budete muset změnit allow_IP_address na skutečnou IP adresu, kterou chcete používat.

Změnu nastavení brány firewall můžete potvrdit pomocí:

sudo ufw status

Výstup:

Status: active

To                         Action      From
--                         ------      ----
27017                      ALLOW       Anywhere
OpenSSH                    ALLOW       Anywhere
27017 (v6)                 ALLOW       Anywhere (v6)
OpenSSH (v6)               ALLOW       Anywhere (v6)

Krok 7:Připojte se k MongoDB

Nyní, když jsme nainstalovali a nakonfigurovali MongoDB, musíme zmínit několik různých způsobů, jak se k němu připojit. Než se pokusíme o přístup k shellu Mongo, musíme se ujistit, že naše konfigurace MongoDB funguje.

Místní instance MongoDB na výchozím portu

Nejzákladnějším připojením k shellu mongo je pouze spuštění příkazu mongo bez jakýchkoli argumentů:

mongo

Místní instance MongoDB na jiném než výchozím portu

Pokud se chceme připojit k prostředí Mongo na konkrétním portu, můžeme použít:

mongo --port port_number

Stačí nahradit číslo portu skutečným číslem portu.

Instance MongoDB na vzdáleném hostiteli

Pokud se potřebujeme připojit ke vzdálenému hostitelskému počítači pomocí instance MongoDB, můžeme použít následující způsoby:

Můžeme zadat připojovací řetězec.

mongo mongodb://your_domain_name.com:port_number

Můžeme použít volbu příkazového řádku –host :

mongo --host your_domain_name.com:port_number

nebo můžeme použít –host a –port

mongo --host your_domain_name.com --port port_number

Instance MongoDB s ověřením

Tyto příklady použijeme, abychom vám ukázali, jak se připojit k instanci MongoDB, která vyžaduje ověření.

V našem připojovacím řetězci můžeme definovat uživatelské jméno, autentizační databázi a číslo portu. Také můžeme definovat heslo (které je volitelné) v našem připojovacím řetězci. Pokud heslo není definováno v našem připojovacím řetězci, shell vás požádá o heslo.

mongo --host mongodb://user@your_domain_name.com:port_number/?authSource=admin

Můžeme použít volby příkazového řádku –username , –password a –authenticationDatabase .

mongo --username user --password --authenticationDatabase admin --host your_domain_name.com --port port_number

Připojte se k sadě replik MongoDB

V připojovacím řetězci můžeme zadat název sady replik a členy.

mongo mongodb://your_domain_name.com.local:port_number,mongodb1.your_domain_name.com.local:port_number,mongodb2.your_domain_name.com.local:port_number/?replicaSet=replA

Pokud používáte formát připojení DNS Seedlist, můžete zadat připojovací řetězec:

mongo "mongodb+srv://server.your_domain_name.com/"

Můžeme zadat název sady replik a členy z –host /:,:,… V tomto příkladu se připojit k sadě replik s názvem replA:

mongo --host replA/your_domain_name.com.local:port_number,mongodb1.your_domain_name.com.local:port_number,mongodb2.your_domain_name.com.local:port_number

Připojení TLS/SSL

V připojovacím řetězci můžeme zadat volbu ssl=true.

mongo mongodb://your_domain_name.com.local:port_number,mongodb1.your_domain_name.com.local:port_number,mongodb2.your_domain_name.com.local:port_number/?replicaSet=replA&ssl=true

nebo můžeme v příkazovém řádku zadat –ssl a použít předchozí příklad, jak se připojit k sadě replik s názvem replA:

mongo --ssl --host replA/your_domain_name.com.local:port_number,mongodb1.your_domain_name.com.local:port_number,mongodb2.your_domain_name.com.local:port_number

Pokud chcete použít výše uvedené příkazy, nezapomeňte nahradit hodnoty jako your_domain_name.com, host_name, user a replA v příkazech skutečnými hodnotami.

Krok 8:Odinstalujte MongoDB

Pokud se vám z nějakého důvodu nelíbí MongoDB a potřebujete jej odstranit ze systému, můžete postupovat podle těchto příkazů:

sudo service mongod stop
sudo apt purge mongodb-org*
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb

V tomto článku jsme vám ukázali, jak nainstalovat MongoDB, přizpůsobit firewall, vytvořit administrátora, povolit vzdálený přístup, připojit se k MongoDB a jak MongoDB odinstalovat a odebrat. Nyní můžete tyto znalosti využít a můžete začít s budováním svých projektů v této úžasné aplikaci.

Samozřejmě, pokud jste jedním z našich zákazníků Ubuntu Hosting nebo pokud máte jeden z našich plánů Managed MongoDB Hosting, nemusíte MongoDB instalovat na svůj Ubuntu 18.04 VPS – jednoduše se zeptejte našich administrátorů, posaďte se a relaxujte. Naši administrátoři vám okamžitě nainstalují MongoDB na Ubuntu 18.04.

PS . Pokud se vám líbil tento příspěvek o tom, jak nainstalovat MongoDB na Ubuntu 18.04 VPS , sdílejte jej se svými přáteli na sociálních sítích pomocí tlačítek níže nebo jednoduše zanechte komentář v sekci komentářů. Děkuji.

Nová verze je k dispozici zde:Jak nainstalovat MongoDB na Ubuntu 20.04 a CentOS 8.


Panels
  1. Jak nainstalovat MongoDB na Ubuntu 16.04

  2. Jak nainstalovat MongoDB na Ubuntu 18.04

  3. Jak nainstalovat Go na Ubuntu 18.04

  1. Jak nainstalovat R na Ubuntu 16.04

  2. Jak nainstalovat MongoDB na Ubuntu 18.04

  3. Jak nainstalovat MongoDB na Ubuntu 22.04

  1. Jak nainstalovat MongoDB na Ubuntu 18.04

  2. Jak nainstalovat R na Ubuntu 20.04

  3. Jak nainstalovat MongoDB na Ubuntu 20.04