1. Co to jest MongoDB?
MongoDB to nierelacyjna (NoSQL) baza danych, która przechowuje dane w formacie JSON-like (dokumenty BSON). Jest elastyczna, skalowalna i często wykorzystywana w aplikacjach webowych oraz big data.
2. Instalacja MongoDB w Ubuntu
Krok 1: Dodanie oficjalnego repozytorium MongoDB
W terminalu wpisz:
sudo apt update
sudo apt install -y gnupg
wget -qO – https://www.mongodb.org/static/pgp/server-6.0.asc | sudo gpg –dearmor -o /usr/share/keyrings/mongodb-server-keyring.gpg
echo „deb [ signed-by=/usr/share/keyrings/mongodb-server-keyring.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse” | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
(Dla Ubuntu 22.04. Jeśli masz starszą wersję, zmień „jammy” na np. „focal” dla Ubuntu 20.04.)
Krok 2: Instalacja MongoDB
sudo apt update
sudo apt install -y mongodb-org
Krok 3: Uruchomienie i sprawdzenie statusu:
sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod
Jeśli MongoDB działa poprawnie, zobaczysz komunikat, że serwer jest aktywny.
Podstawowe komendy w MongoDB
MongoDB działa w trybie interaktywnym. Aby uruchomić konsolę MongoDB, wpisz:
mongosh
Podstawowe operacje na bazach danych
Wyświetlenie dostępnych baz danych:
show databases
Utworzenie lub przełączenie się do bazy danych:
use biblioteka
(Jeśli baza nie istnieje, zostanie utworzona przy dodaniu pierwszego dokumentu.)
Usunięcie bazy danych:
db.dropDatabase()
Podstawowe operacje na kolekcjach (odpowiednik tabel w SQL)
Wyświetlenie kolekcji w bazie:
show collections
Utworzenie kolekcji:
db.createCollection(„ksiazki”)
Usunięcie kolekcji:
db.ksiazki.drop()
Podstawowe operacje na dokumentach (odpowiednik rekordów w SQL)
Dodanie dokumentu:
db.ksiazki.insertOne({
tytul: „Hobbit”,
autor: „J.R.R. Tolkien”,
rok_wydania: 1937
})
Dodanie wielu dokumentów:
db.ksiazki.insertMany([
{ tytul: „Wiedźmin: Ostatnie Życzenie”, autor: „Andrzej Sapkowski”, rok_wydania: 1993 },
{ tytul: „Duma i uprzedzenie”, autor: „Jane Austen”, rok_wydania: 1813 }
])
Wyświetlenie wszystkich dokumentów w kolekcji:
db.ksiazki.find()
Filtrowanie wyników (np. książki wydane po 1900 roku):
db.ksiazki.find({ rok_wydania: { $gt: 1900 } })
Aktualizacja danych (zmiana roku wydania „Hobbita”):
db.ksiazki.updateOne(
{ tytul: „Hobbit” },
{ $set: { rok_wydania: 1938 } }
)
Usunięcie dokumentu (np. książki „Duma i uprzedzenie”):
db.ksiazki.deleteOne({ tytul: „Duma i uprzedzenie” })
MongoDB vs MySQL – Kluczowe Różnice:
