Jak zarządzać MongoDB na Linuxie?

Popular:
POWIĘKSZ SWOJĄ KONFIGURACJĘ SERWERA! ZASTOSUJ AVA I URUCHOM Z 15% ZNIŻKI
UŻYJ PROMOCJI:

Zarządzanie MongoDB na Linux VPS obejmuje instalację, konfigurację, bezpieczeństwo i optymalizację wydajności.

Zarządzanie MongoDB na Linux VPS jest niezbędne dla programistów i administratorów systemów, którzy chcą wykorzystać pełny potencjał tej potężnej bazy danych NoSQL. Od instalacji i konfiguracji po bezpieczeństwo i optymalizację wydajności, dobrze zarządzana konfiguracja MongoDB zapewnia niezawodność, skalowalność i efektywność dla Twoich aplikacji.

Postępując zgodnie z kompleksowymi krokami przedstawionymi w naszym przewodniku, możesz zapewnić, że Twoja instancja MongoDB jest nie tylko operacyjna, ale także bezpieczna i zoptymalizowana pod kątem wydajności. Wdrażanie najlepszych praktyk w zakresie instalacji, uwierzytelniania, kontroli dostępu i zarządzania zasobami zapewni solidne podstawy dla Twoich aplikacji opartych na danych. Regularne monitorowanie i konserwacja dodatkowo gwarantują, że Twoja baza danych pozostaje responsywna i odporna na zmieniające się wymagania.

Dla tych, którzy chcą uprościć zarządzanie MongoDB, warto rozważyć wykorzystanie narzędzi i skryptów automatyzacyjnych do efektywnego wykonywania rutynowych zadań. Dodatkowo, eksploracja interfejsów graficznych, takich jak MongoDB Compass czy NoSQLBooster, może uprościć interakcje z bazą danych, szczególnie w przypadku złożonych zapytań i wizualizacji danych. Integrując te narzędzia w swój proces pracy, możesz zwiększyć produktywność i utrzymać środowisko MongoDB o wysokiej wydajności.
Baeldung.

1. Instalacja MongoDB na Linux VPS

MongoDB można zainstalować za pomocą menedżerów pakietów, takich jak apt (dla Debian/Ubuntu) lub yum (dla CentOS/RHEL).

Dla Ubuntu/Debian

  1. Zaktualizuj listę pakietów:
    sudo apt update 
sudo apt upgrade -y
  • Importuj klucz GPG MongoDB:
    curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-keyring.gpg
  • **Uruchom następujące polecenie, aby dodać brakujący klucz publiczny:

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B00A0BD1E2C63C11
    lub

    **Uruchom to polecenie, aby ręcznie zaimportować klucz:

    wget -qO - https://pgp.mongodb.com/server-5.0.asc | sudo tee /etc/apt/trusted.gpg.d/mongodb-server-5.0.

    Sprawdź, czy klucz został dodany pomyślnie:

    gpg --dry-run --quiet --import --import-options import-show /etc/apt/trusted.gpg.d/mongodb-server
  • Dodaj repozytorium MongoDB:
    Ubuntu:
    echo "deb [signed-by=/usr/share/keyrings/mongodb-server-keyring.gpg] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list

    Debian:

    echo "deb [signed-by=/etc/apt/trusted.gpg.d/mongodb-server-5.0.asc] https://repo.mongodb.org/apt/debian bullseye/mongodb-org/5.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
  • Zainstaluj MongoDB:
    sudo apt update
    sudo apt install -y mongodb-org
  • Uruchom i włącz MongoDB:
    sudo systemctl start mongod
    sudo systemctl enable mongod
  • Dla CentOS/RHEL

    1. Dodaj repozytorium MongoDB:
      sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo <<EOF
      [mongodb-org-6.0]
      name=MongoDB Repository
      baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
      gpgcheck=1
      enabled=1
      gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
      EOF
    2. Zainstaluj MongoDB:
      sudo yum install -y mongodb-org
    3. Uruchom i włącz MongoDB:
      sudo systemctl start mongod
      sudo systemctl enable mongod

    2. Zabezpieczanie MongoDB

    Domyślnie MongoDB nasłuchuje na localhost (127.0.0.1). Aby go zabezpieczyć:

    Włącz uwierzytelnianie

    1. Utwórz użytkownika administratora:
      mongosh
      use admin
      db.createUser({
      user: "admin",
      pwd: "StrongPassword",
      roles: [{ role: "root", db: "admin" }]
      })
    2. Włącz uwierzytelnianie w pliku konfiguracyjnym MongoDB:
      sudo nano /etc/mongod.conf

      Znajdź sekcję security i dodaj:

      security:
      authorization: enabled
    3. Uruchom ponownie MongoDB:
      sudo systemctl restart mongod

    Ogranicz dostęp zewnętrzny

    1. Zmodyfikuj MongoDB, aby nasłuchiwał tylko na localhost:
      sudo nano /etc/mongod.conf

      Zmień:

      bindIp: 127.0.0.1
    2. Użyj UFW (Ubuntu) lub FirewallD (CentOS), aby zezwolić tylko na określone adresy IP:
      sudo ufw allow from YOUR_IP to any port 27017

    3. Zarządzanie MongoDB

    Sprawdź status usługi MongoDB

    sudo systemctl status mongod

    Uruchom ponownie MongoDB

    sudo systemctl restart mongod

    Zatrzymaj MongoDB

    sudo systemctl stop mongod

    Włącz MongoDB do uruchamiania przy starcie

    sudo systemctl enable mongod

    4. Zarządzanie bazami danych w MongoDB

    Połącz z MongoDB

    mongosh

    Utwórz bazę danych

    use mydatabase

    Pokaż bazy danych

    show dbs

    Utwórz kolekcję

    db.createCollection("users")

    Wstaw dane

    db.users.insertOne({ name: "John Doe", age: 30, email: "john@example.com" })

    Znajdź dane

    db.users.find()

    Usuń bazę danych

    use mydatabase
    db.dropDatabase()

    5. Kopie zapasowe i przywracanie

    Kopia zapasowa bazy danych MongoDB

    mongodump --db=mydatabase --out=/backup/

    Przywrócenie bazy danych MongoDB

    mongorestore --db=mydatabase /backup/mydatabase/

    6. Optymalizacja wydajności

    Indeksowanie dla szybszych zapytań

    db.users.createIndex({ email: 1 })

    Monitorowanie wydajności

    db.serverStatus()

    Ogranicz użycie pamięci

    Zmień wiredTigerCacheSizeGB w /etc/mongod.conf:

    storage:
    wiredTiger:
    engineConfig:
    cacheSizeGB: 1

    Użyj puli połączeń

    Zmień /etc/mongod.conf:

    net:
    maxIncomingConnections: 1000

    7. Dzienniki i debugowanie

    Wyświetl dzienniki MongoDB

    sudo journalctl -u mongod --no-pager | tail -n 50

    Sprawdź dzienniki błędów

    sudo cat /var/log/mongodb/mongod.log

    8. Odinstaluj MongoDB (jeśli to konieczne)

    Dla Ubuntu/Debian

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

    Dla CentOS/RHEL

    sudo systemctl stop mongod
    sudo yum remove -y mongodb-org*
    sudo rm -r /var/log/mongodb /var/lib/mongodb

    Podsumowanie

    Zarządzanie MongoDB na Linux VPS wymaga odpowiedniej instalacji, zabezpieczenia i optymalizacji wydajności. Postępując zgodnie z tymi krokami, zapewniasz, że Twoja baza danych MongoDB działa efektywnie i bezpiecznie. 🚀

    Czy potrzebujesz pomocy w skryptach automatyzacyjnych do zarządzania MongoDB? 😊