Heldigvis gir MongoDB måter å eksportere dataene våre til forskjellige formater, for eksempel JSON, CSV og BSON. I denne opplæringen vil vi fokusere på å lære å eksportere MongoDB -samlinger til de to mest populære formatene, CSV og JSON.”
La oss hoppe inn.
Installer Mongoexport -verktøyet
For å eksportere en enkelt eller flere MongoDB -samlinger, bruker vi Mongoexport -verktøyet. Dette kommandolinjeverktøyet lar oss koble oss til MongoDB -klyngen og eksportere en spesifikk samling til et spesifikt format.
Før vi kan bruke denne Mongo Export -kommandoen, må vi sikre at verktøyet er installert.
Åpne nettleseren din og naviger til lenken nedenfor:
https: // www.Mongodb.com/prøv/last ned/databasetoker
Finn installasjonsprogrammet for maskinen din og last ned den medfølgende installasjonsprogrammet. Du kan deretter følge instruksjonene for å sette opp databaseverktøyene for systemet ditt.
Hvis du er på Debian og Debian-baserte distribusjoner, kjører du følgende kommandoer for å installere MongoDB-databaseverktøyene.
$ wget https: // fastdl.Mongodb.org/verktøy/db/mongoDB-database-tools-debian11-x86_64-100.6.0.Deb
Installer pakken:
$ sudo dpkg -i mongodb-database-tools-debian11-x86_64-100.6.0.Deb
Dette skal installere MongoDB Database Tools Suite, som inkluderer Mongo Export -verktøyet.
Du kan bekrefte ved å kjøre kommandoen:
$ Mongoexport -Versjon
Dette skal returnere detaljer om installasjonsmongexport -verktøyet som vist:
Mongoexport versjon: 100.6.0MongoDB Export Collection ved hjelp av Mongo Export -kommando
Følgende viser kommandosyntaxen du kan bruke til å eksportere samlingen din til JSON -format.
Mongoexport -Collection =--db = --ut = filnavn.JSON
-Out -parameteren lar deg spesifisere banen til filnavnet. Du kan legge igjen denne parameteren, og MongoDB vil generere utgangsfilen med navnet på den spesifiserte samlingen.
La oss diskutere hvordan vi kan eksportere dataene våre fra en gitt samling. Det første trinnet er å sikre at MongoDB -serveren er i gang.
Anta at vi ønsker å eksportere en samling under navnet "Netflix" i "Entertainment" -databasen; Vi kan kjøre kommandoen som vist:
bash-3.2 $ MongOExport -Collection = Netflix - -DB = Entertainment --out = Netflix.JSON
Kommandoen over skal eksportere alle postene fra Netflix -samlingen til Netflix.JSON -fil. Kommandoen vil standard lagre den resulterende JSON -filen i den gjeldende arbeidskatalogen.
Kommandoen skal returnere antall eksporterte dokumenter som vist i utdataene nedenfor:
2022-09-23T19: 06: 54.388+0300 koblet til: mongodb: // localhost/Eksporter alle samlinger
Anta at vi har flere samlinger i en gitt database og ønsker å eksportere dem alle på en gang.
Et eksempel -scenario er som vist:
> Vis samlingerI eksemplet ovenfor har vi tre samlinger fra underholdningsdatabasen. For å eksportere dem alle, kan vi kjøre kommandoen:
Mongodump -D Entertainment -o EntertainmentI dette tilfellet bruker vi Mongodump -kommandoen for å eksportere alle samlingene i underholdningsdatabasen.
Dette skal vise utdata som:
Kommandoen vil lagre de eksporterte dataene i underholdningskatalogen. De resulterende filene er som vist:
bash-3.2 $ lsEksportsamling som CSV -format
For å eksportere en samling i CSV -format, bruk -typen og -feltparametrene i Mongoexport -kommandoen.
Anta at dokumentets struktur er som vist:
Vi eksporterer dataene til CSV -format som vist:
$ mongoexport --samling = hulu - -db = underholdning -type = csv --fields = show_id, type, tittel, date_added, release_year, rating, listen_in, beskrivelse --out = hulu.CSVI eksemplet må vi spesifisere feltene vi ønsker å eksportere fra samlingen som en komma-separert liste.
Kommandoen skal returnere utdata som:
2022-09-23T19: 28: 14.106+0300 koblet til: mongodb: // localhost/I dette tilfellet eksporterer kommandoen 3073 poster til Hulu.CSV -fil. Du kan bruke denne filen til å overføre dataene til en annen klynge eller sende dem til en CSV -parser.
Konklusjon
Denne opplæringen undersøker de forskjellige metodene for å eksportere data fra en MongoDB -samling ved hjelp av Mongoexport -kommandoen. Du kan sjekke kommandodokumentasjonen for å oppdage mer.
Takk for at du leser og følg med for mer!!