MongoDB offline migreren naar Azure Cosmos DB voor MongoDB vCore met behulp van systeemeigen MongoDB-hulpprogramma's
VAN TOEPASSING OP: MongoDB vCore
In deze zelfstudie gebruikt u systeemeigen MongoDB-hulpprogramma's om een offline (eenmalige) migratie van een database uit te voeren van een on-premises of cloudexemplaren van MongoDB naar Azure Cosmos DB voor MongoDB vCore. De systeemeigen MongoDB-hulpprogramma's zijn een set binaire bestanden die het bewerken van gegevens op een bestaand MongoDB-exemplaar vergemakkelijken. De focus van dit document ligt op het migreren van gegevens uit een MongoDB-exemplaar met behulp van mongoexport/mongoimport of mongodump/mongorestore. Omdat de systeemeigen hulpprogramma's verbinding maken met MongoDB met behulp van verbindingsreeks s, kunt u de hulpprogramma's overal uitvoeren. De systeemeigen hulpprogramma's kunnen de eenvoudigste oplossing zijn voor kleine gegevenssets waarbij de totale migratietijd geen probleem is.
Vereisten
- Een bestaand Azure Cosmos DB voor MongoDB vCore-cluster.
- Als u geen Azure-abonnement hebt, maakt u gratis een account.
- Als u een bestaand Azure-abonnement hebt, maakt u een nieuw Azure Cosmos DB voor MongoDB vCore-cluster.
- Systeemeigen MongoDB-hulpprogramma's die op uw computer zijn geïnstalleerd.
Voorbereiden
Voordat u de migratie start, moet u ervoor zorgen dat u uw Azure Cosmos DB voor MongoDB vCore-account en uw bestaande MongoDB-exemplaar voor migratie hebt voorbereid.
- MongoDB-exemplaar (bron)
- Voltooi de evaluatie van de premigratie om te bepalen of er een lijst met incompatibiliteit en waarschuwingen tussen uw bronexemplaren en het doelaccount is.
- Zorg ervoor dat uw systeemeigen MongoDB-hulpprogramma's overeenkomen met dezelfde versie als de bestaande (bron) MongoDB-instantie.
- Als uw MongoDB-exemplaar een andere versie heeft dan Azure Cosmos DB voor MongoDB vCore, installeert u beide systeemeigen mongoDB-hulpprogrammaversies en gebruikt u respectievelijk de juiste hulpprogrammaversie voor MongoDB en Azure Cosmos DB voor MongoDB vCore.
- Voeg een gebruiker met
readWrite
machtigingen toe, tenzij er al een bestaat. U gebruikt deze referentie uiteindelijk met de mongoexport - en mongodump-hulpprogramma's .
- Azure Cosmos DB voor MongoDB vCore (doel)
- Verzamel de referenties van het Azure Cosmos DB voor MongoDB vCore-account.
- Configureer firewallinstellingen in Azure Cosmos DB voor MongoDB vCore.
Tip
We raden u aan deze hulpprogramma's uit te voeren in hetzelfde netwerk als het MongoDB-exemplaar om verdere firewallproblemen te voorkomen.
Het juiste systeemeigen MongoDB-hulpprogramma kiezen
Er zijn enkele aandachtspunten op hoog niveau bij het kiezen van het juiste systeemeigen MongoDB-hulpprogramma voor uw offlinemigratie.
De migratie uitvoeren
Migreer een verzameling van het MongoDB-bronexemplaren naar het Azure Cosmos DB voor MongoDB vCore-doelaccount met behulp van het systeemeigen hulpprogramma van uw voorkeur. Zie systeemeigen MongoDB-hulpprogramma's voor meer informatie over het selecteren van een hulpprogramma
Tip
Als u gewoon een klein JSON-bestand hebt dat u wilt importeren in Azure Cosmos DB voor MongoDB vCore, is het hulpprogramma mongoimport een snelle oplossing voor het opnemen van de gegevens.
Als u de gegevens wilt exporteren uit het MongoDB-bronexemplaren, opent u een terminal en gebruikt u een van de drie methoden die hier worden vermeld.
Geef de
--host
,--username
en--password
argumenten op om verbinding te maken met JSON-records en deze te exporteren.mongoexport \ --host <hostname><:port> \ --username <username> \ --password <password> \ --db <database-name> \ --collection <collection-name> \ --out <filename>.json
Exporteer een subset van de MongoDB-gegevens door een
--query
argument toe te voegen. Dit argument zorgt ervoor dat het hulpprogramma alleen documenten exporteert die overeenkomen met het filter.mongoexport \ --host <hostname><:port> \ --username <username> \ --password <password> \ --db <database-name> \ --collection <collection-name> \ --query '{ "quantity": { "$gte": 15 } }' \ --out <filename>.json
Gegevens exporteren uit Azure Cosmos DB voor MongoDB vCore.
mongoexport \ --uri <target-connection-string> --db <database-name> \ --collection <collection-name> \ --query '{ "quantity": { "$gte": 15 } }' \ --out <filename>.json
Importeer het eerder geëxporteerde bestand in het Azure Cosmos DB-doelaccount voor MongoDB vCore.
mongoimport \ --file <filename>.json \ --type json \ --db <database-name> \ --collection <collection-name> \ --ssl \ --uri <target-connection-string>
Bewaak de terminaluitvoer van mongoimport. De uitvoer drukt tekstregels af naar de terminal met updates voor de status van de importbewerking.