Wyszukiwanie w witrynie

Jak zainstalować MongoDB 4 w CentOS 8


MongoDB to popularny, oparty na dokumentach, uniwersalny silnik bazy danych NoSQL, który przechowuje dane w formacie JSON. Jest darmowy i ma open source oraz zawiera zestaw fajnych i przydatnych funkcji, takich jak przechowywanie plików, replikacja danych, zapytania ad-hoc i równoważenie obciążenia, żeby wymienić tylko kilka. Niektóre z wiodących firm, które włączyły MongoDB w swoich aplikacjach, to Adobe, Facebook, Google, eBay i Coinbase.

W tym samouczku dowiesz się, jak zainstalować MongoDB na CentOS 8.

Krok 1: Dodaj repozytorium MongoDB

Ponieważ MongoDB nie ma w domyślnym repozytorium CentOS 8, dodamy go ręcznie. Najpierw utwórz plik repozytorium, jak pokazano.

vi /etc/yum.repos.d/mongodb.repo

Wklej poniższą konfigurację i zapisz plik.

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/development/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

Krok 2: Zainstaluj MongoDB w CentOS 8

Po włączeniu repozytorium następnym krokiem będzie instalacja MongoDB za pomocą następującego polecenia dnf.

dnf install mongodb-org

Następnie uruchom i włącz MongoDB, aby uruchamiał się podczas uruchamiania, uruchamiając poniższe polecenia.

systemctl start mongod
sudo systemctl enable mongod

Aby zweryfikować status MongoDB, uruchom:

systemctl status mongod

Alternatywnie możesz użyć narzędzia netstat, aby potwierdzić, że usługa Mongod rzeczywiście nasłuchuje.

netstat -pnltu

Świetnie! potwierdziliśmy, że MongoDB działa i działa.

Krok 3: Uzyskaj dostęp do powłoki MongoDB

Możesz teraz uzyskać dostęp do powłoki MongoDB, po prostu wydając polecenie:

mongo

Powinieneś otrzymać wynik podobny do pokazanego na zrzucie ekranu poniżej.

Tworzenie użytkownika administracyjnego MongoDBan

Zmieńmy teraz bieg i utwórz konto administratora.
Zawsze dobrą radą jest utworzenie użytkownika administratora z podwyższonymi uprawnieniami do wykonywania podwyższonych zadań. Aby to zrobić, najpierw uzyskaj dostęp do powłoki MongoDB:

mongo

Następnie przejdź do administratora bazy danych, uruchamiając.

> use admin

Teraz utwórz nowego użytkownika MongoDB, uruchamiając poniższy kod.

> db.createUser(
 {
 user: "mongod_admin",
 pwd: "P@ssword@2019",
 roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
 }
 )

Jeśli się powiedzie, powinieneś otrzymać poniższe dane wyjściowe.

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

Aby wyświetlić listę utworzonych użytkowników MongoDB, uruchom.

> show users

Konfigurowanie uwierzytelniania dla MongoDB

W tej chwili wszyscy użytkownicy mogą uzyskać dostęp do powłoki i wykonać dowolne polecenia, co wcale nie jest zalecane ze względów bezpieczeństwa. Mając to na uwadze, musimy utworzyć uwierzytelnienie dla właśnie utworzonego użytkownika admin, aby uniemożliwić innym użytkownikom uruchamianie poleceń bez autoryzacji.

Aby włączyć uwierzytelnianie, edytuj plik /lib/systemd/system/mongod.service, w sekcji [Service] znajdź i edytuj parametr Środowisko, jak pokazano.

Environment="OPTIONS= --auth -f /etc/mongod.conf"

Zapisz i wyjdź z pliku konfiguracyjnego.

Aby zmiany zaczęły obowiązywać, załaduj ponownie system i zrestartuj MongoDB.

systemctl daemon-reload
systemctl restart mongod

Jeśli teraz spróbujesz wyświetlić listę użytkowników bez uwierzytelnienia, powinien pojawić się błąd, jak pokazano.

Aby uwierzytelnić, po prostu przekaż poświadczenia, jak pokazano.

> db.auth('mongod_admin', 'P@ssword@2019')

Teraz możesz później uruchomić dowolne polecenie. Spróbujmy jeszcze raz wylistować użytkowników:

> show users

Tym razem wszystko poszło dobrze, ponieważ dostarczono dane uwierzytelniające.

Aby wyjść z uruchomienia silnika bazy danych.

> exit

I to wszystko na dzisiaj. Mamy nadzieję, że już czujesz się komfortowo, instalując MongoDB4 w swoim systemie CentOS 8 i rozpoczynając od wykonania kilku niezbędnych kroków.