Megosztás a következőn keresztül:


MongoDB migrálása az Azure Cosmos DB for MongoDB virtuális magra offline állapotba a MongoDB natív eszközeivel

A KÖVETKEZŐKRE VONATKOZIK: MongoDB virtuális mag

Ebben az oktatóanyagban a MongoDB natív eszközeivel végez offline (egyszeri) migrálást egy adatbázisról a MongoDB helyszíni vagy felhőalapú példányáról az Azure Cosmos DB-be MongoDB virtuális magként. A MongoDB natív eszközei bináris fájlok, amelyek megkönnyítik az adatok kezelését egy meglévő MongoDB-példányon. A dokumentum középpontjában az adatok MongoDB-példányból való migrálása áll a mongoexport/mongoimport vagy a mongodump/mongorestore használatával. Mivel a natív eszközök kapcsolati sztring használatával csatlakoznak a MongoDB-hez, az eszközöket bárhol futtathatja. A natív eszközök lehetnek a legegyszerűbb megoldások olyan kis adathalmazokhoz, ahol a teljes migrálási idő nem okoz gondot.

Előfeltételek

Előkészítés

A migrálás megkezdése előtt győződjön meg arról, hogy előkészítette az Azure Cosmos DB for MongoDB virtuálismag-fiókját és a meglévő MongoDB-példányát a migráláshoz.

  • MongoDB-példány (forrás)
    • Végezze el a premigrálási értékelést annak megállapításához, hogy létezik-e a forráspéldány és a célfiók közötti inkompatibilitások és figyelmeztetések listája.
    • Győződjön meg arról, hogy a MongoDB natív eszközei megegyeznek a meglévő (forrás) MongoDB-példánysal.
      • Ha a MongoDB-példány más verziójú, mint a MongoDB-hez készült Azure Cosmos DB virtuális mag, telepítse a MongoDB natív eszközverzióit, és használja a MongoDB és az Azure Cosmos DB megfelelő eszközverzióját MongoDB virtuális maghoz.
    • Adjon hozzá egy engedélyekkel rendelkező readWrite felhasználót, kivéve, ha már létezik ilyen. Ezt a hitelesítő adatot végül a mongoexport és a mongodump eszközökkel használhatja.
  • Azure Cosmos DB a MongoDB virtuális maghoz (cél)

Tipp.

Javasoljuk, hogy a további tűzfalproblémák elkerülése érdekében ezeket az eszközöket a MongoDB-példánysal azonos hálózaton belül futtassa.

Válassza ki a megfelelő MongoDB natív eszközt

Az offline migráláshoz megfelelő MongoDB natív eszköz kiválasztásakor érdemes megfontolni néhány magas szintű szempontot.

A migrálás végrehajtása

Migráljon egy gyűjteményt a forrás MongoDB-példányból a cél Azure Cosmos DB for MongoDB virtuálismag-fiókba az előnyben részesített natív eszköz használatával. Az eszköz kiválasztásával kapcsolatos további információkért lásd a natív MongoDB-eszközöket

Tipp.

Ha egyszerűen van egy kis JSON-fájlja, amelyet importálni szeretne az Azure Cosmos DB for MongoDB virtuális magjába, a mongoimport eszköz gyors megoldás az adatok betöltésére.

  1. Ha a forrás MongoDB-példányból szeretné exportálni az adatokat, nyisson meg egy terminált, és használja az itt felsorolt három módszer bármelyikét.

    • Adja meg a --hostJSON-rekordokhoz való csatlakozáshoz és exportáláshoz használt , --usernameés --password argumentumokat.

      mongoexport \
          --host <hostname><:port> \
          --username <username> \
          --password <password> \
          --db <database-name> \
          --collection <collection-name> \
          --out <filename>.json
      
    • A MongoDB-adatok egy részhalmazának exportálása argumentum hozzáadásával --query . Ez az argumentum biztosítja, hogy az eszköz csak a szűrőnek megfelelő dokumentumokat exportálja.

      mongoexport \
          --host <hostname><:port> \
          --username <username> \
          --password <password> \
          --db <database-name> \
          --collection <collection-name> \
          --query '{ "quantity": { "$gte": 15 } }' \
          --out <filename>.json
      
    • Adatok exportálása az Azure Cosmos DB for MongoDB virtuális magból.

      mongoexport \
          --uri <target-connection-string>
          --db <database-name> \
          --collection <collection-name> \
          --query '{ "quantity": { "$gte": 15 } }' \
          --out <filename>.json
      
  2. Importálja a korábban exportált fájlt a cél Azure Cosmos DB for MongoDB vCore-fiókba.

    mongoimport \
        --file <filename>.json \
        --type json \
        --db <database-name> \
        --collection <collection-name> \
        --ssl \
        --uri <target-connection-string>
    
  3. Monitorozza a mongoimport terminálkimenetét. A kimenet szövegsorokat nyomtat ki a terminálra az importálási művelet állapotának frissítésével.

Következő lépés