Kako instalirati MongoDB na Ubuntu 24.04


Ubuntu 24.04 (Noble Numbat) službeno je dostupan za preuzimanje i instalaciju na bilo kojem podržanom hardveru za proizvodnu upotrebu. Ova vrsta NoSQL baze podataka stvorena je za visoku skalabilnost i fleksibilnost. MongoDB pohranjuje svoje podatke u strukturi dokumenata sličnih JSON-u. To omogućava jednostavno upravljanje podacima čak i kada sadrže složene strukture. Fleksibilni format podataka MongoDB-a privlači programere koji rade s različitim programskim jezicima.

Ultimativni priručnik za Ubuntu desktop

Ovladajte Ubuntuom poput profesionalca - od prekrasnog prilagođavanja radne površine do moćne automatizacije putem terminala. Savršeno za programere, administratore sustava i napredne korisnike koji žele potpunu kontrolu nad svojim radnim okruženjem.

Neke od popularnih primjena MongoDB-a su:

  • U razvoju mobilnih aplikacija
  • Pohrana podataka za analitiku u IoT-u
  • Neki sustavi za upravljanje sadržajem prema zadanim postavkama koriste MongoDB
  • Razvoj aplikacija društvenih mreža
  • Za analizu i obradu podataka u stvarnom vremenu
  • Izrada e-trgovinskih platformi
  • Prilikom pohranjivanja bilo koje vrste polustrukturiranih i nestrukturiranih podataka

U ovom članku ćemo instalirati MongoDB na Ubuntu 24.04 Linux sustav.

Ažuriraj sustav i dodaj spremište

Počinjemo s instalacijom ažuriranjem popisa repozitorija našeg operativnog sustava.

sudo apt update

Ako želite, svi instalirani paketi na sustavu mogu se ažurirati.

sudo apt upgrade -y

Za sve primijenjene nadogradnje kernela na sustavu potrebna je ponovno pokretanje.

[ -e /var/run/reboot-required ] && sudo reboot

Pričekajte da se sustav ponovno pokrene, zatim se ponovno prijavite i uvezite ključ MongoDB repozitorija.

sudo apt install gnupg curl
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \
   sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \
   --dearmor

Dodajte MongoDB repozitorij u svoj Ubuntu sustav.

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list

Pokrenite sljedeću naredbu za ažuriranje lokalne baze paketa sustava:

sudo apt update

Potvrdite da nema tiskarskih pogrešaka.

Hit:1 https://mirror.hetzner.com/ubuntu/packages noble InRelease
Ign:2 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 InRelease
Hit:3 https://mirror.hetzner.com/ubuntu/packages noble-updates InRelease
Hit:4 https://mirror.hetzner.com/ubuntu/packages noble-backports InRelease
Hit:5 https://mirror.hetzner.com/ubuntu/security noble-security InRelease
Get:6 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 Release [2,090 B]
Get:7 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 Release.gpg [866 B]
Get:8 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0/multiverse amd64 Packages [38.7 kB]
Get:9 https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0/multiverse arm64 Packages [37.6 kB]
Fetched 79.2 kB in 2s (41.7 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.

Instalirajte MongoDB poslužitelj na Ubuntu 24.04

Nakon što je repozitorij dodan i potvrđeno da radi, može se izvršiti instalacija MongoDB poslužitelja na Ubuntu 24.04. Dok ste u aktivnoj terminal sesiji, izvršite sljedeće naredbe.

sudo apt -y install mongodb-org

Potvrdite da je instalacija bila uspješna provjerom verzije softvera.

$ mongod --version
db version v7.0.9
Build Info: {
    "version": "7.0.9",
    "gitVersion": "3ff3a3925c36ed277cf5eafca5495f2e3728dd67",
    "openSSLVersion": "OpenSSL 3.0.13 30 Jan 2024",
    "modules": [],
    "allocator": "tcmalloc",
    "environment": {
        "distmod": "ubuntu2204",
        "distarch": "x86_64",
        "target_arch": "x86_64"
    }
}

Mapa podataka za MongoDB je /var/lib/mongodb, a dnevničke datoteke se pohranjuju unutar mape /var/log/mongodb.

Postavke se mogu prilagoditi u sljedećoj datoteci.

sudo vim /etc/mongod.conf

Uslugu je moguće pokrenuti ručno pokretanjem dolje navedenih naredbi.

sudo systemctl start mongod

Za ponovni početak upotrijebite:

sudo systemctl restart mongod

A za zaustavljanje servisa izvršite:

sudo systemctl stop mongod

Da biste osigurali da će se MongoDB usluga pokrenuti pri ponovnom pokretanju sustava, pokrenite:

sudo systemctl enable mongod

Provjerite zapise pogrešaka koristeći:

sudo tail -f /var/log/mongodb/mongod.log

Korištenje MongoDB poslužitelja

Započnite korištenje MongoDB-a pokretanjem mongosh sesije

# mongosh
Current Mongosh Log ID:	663406e5292bc66b3a2202d7
Connecting to:		mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+2.2.5
Using MongoDB:		7.0.9
Using Mongosh:		2.2.5

For mongosh info see: https://docs.mongodb.com/mongodb-shell/


To help improve our products, anonymous usage data is collected and sent to MongoDB periodically (https://www.mongodb.com/legal/privacy-policy).
You can opt-out by running the disableTelemetry() command.

------
   The server generated these startup warnings when booting
   2024-05-02T21:33:22.361+00:00: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine. See http://dochub.mongodb.org/core/prodnotes-filesystem
   2024-05-02T21:33:23.055+00:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted
------

test>

Kreirajmo primjer baze podataka pod nazivom Movies

test> use Movies
switched to db Movies
Movies>

Provjeri trenutno odabranu bazu podataka

Movies> db
Movies

MongoDB će stvoriti bazu podataka tek kada u nju prvi put pohranite podatke. Podaci mogu biti kolekcija ili dokument.

Dodavanje podataka u bazu podataka

Možete dodati dokument u svoju bazu podataka koristeći naredbu db.collection.insert().

Movies> db.movies.insert({name: "Dune: Part Two", year: 2024})
{
  acknowledged: true,
  insertedIds: { '0': ObjectId('66340a3690f41b1d482202da') }
}

Movies> db.movies.insert({name: "Challengers", year: 2024})
{
  acknowledged: true,
  insertedIds: { '0': ObjectId('66340a9b90f41b1d482202db') }
}

Za popis svih kreiranih baza podataka, upotrijebite sljedeću naredbu:

Movies> show dbs
Movies  152.00 KiB
admin    40.00 KiB
config   92.00 KiB
local    40.00 KiB

Upotrijebite naredbu db.dropDatabase() za brisanje postojeće baze podataka.

Movies>  show dbs
Movies  152.00 KiB
admin    40.00 KiB
config   92.00 KiB
local    40.00 KiB

test> use Movies
switched to db Movies
Movies>

Movies> db.dropDatabase()
{ ok: 1, dropped: 'Movies' }

Sada provjerite popis baza podataka.

Movies> show dbs
admin   40.00 KiB
config  92.00 KiB
local   40.00 KiB

Možemo potvrditi da je baza podataka izbrisana.

Referentna dokumentacija:

  • Osnove MongoDB-a
  • MongoDB Dokumentacija