MongoDB Import und Export Beispiel
In diesem Tutorial zeigen wir Ihnen, wie Sie MongoDB mit den Befehlenmongoexport
undmongoimport
sichern und wiederherstellen.
1. Datenbank sichern mit mongoexport
Einige Beispiele zeigen Ihnen, wie Sie diemongoexport
zum Sichern der Datenbank verwenden.
Überprüfen Sie einige der allgemeinen Verwendungsoptionen.
$ mongoexport Export MongoDB data to CSV, TSV or JSON files. options: -h [ --host ] arg mongo host to connect to (/s1,s2 for -u [ --username ] arg username -p [ --password ] arg password -d [ --db ] arg database to use -c [ --collection ] arg collection to use (some commands) -q [ --query ] arg query filter, as a JSON string -o [ --out ] arg output file; if not specified, stdout is used
1.1 Export all documents (all fields) into the file “domain-bk.json
“.
$ mongoexport -d webmitta -c domain -o domain-bk.json connected to: 127.0.0.1 exported 10951 records
1.2 Export all documents with fields “domain
” and “worth
” only.
$ mongoexport -d webmitta -c domain -f "domain,worth" -o domain-bk.json connected to: 127.0.0.1 exported 10951 records
1.3 Export all documents with a search query, in this case, only document with “worth > 100000
” will be exported.
$mongoexport -d webmitta -c domain -f "domain,worth" -q '{worth:{$gt:100000}}' -o domain-bk.json connected to: 127.0.0.1 exported 10903 records
1.4 Connect to remote server like mongolab.com, using username and password.
$ mongoexport -h id.mongolab.com:47307 -d heroku_app -c domain -u username123 -p password123 -o domain-bk.json connected to: id.mongolab.com:47307 exported 10951 records
Überprüfen Sie die exportierte Datei.
$ ls -lsa total 2144 0 drwxr-xr-x 5 example staff 170 Apr 10 12:00 . 0 drwxr-xr-x+ 50 example staff 1700 Apr 5 10:55 .. 2128 -rw-r--r-- 1 example staff 1089198 Apr 10 12:15 domain-bk.json
Note
Mitmongoexport
werden alle exportierten Dokumente im JSON-Format angezeigt.
2. Stellen Sie die Datenbank mit mongoimport wieder her
Einige Beispiele zeigen Ihnen, wie Siemongoimport
zum Wiederherstellen der Datenbank verwenden.
Überprüfen Sie einige der allgemeinen Verwendungsoptionen.
$ mongoimport connected to: 127.0.0.1 no collection specified! Import CSV, TSV or JSON data into MongoDB. options: -h [ --host ] arg mongo host to connect to (/s1,s2 for sets) -u [ --username ] arg username -p [ --password ] arg password -d [ --db ] arg database to use -c [ --collection ] arg collection to use (some commands) -f [ --fields ] arg comma separated list of field names e.g. -f name,age --file arg file to import from; if not specified stdin is used --drop drop collection first --upsert insert or update objects that already exist
2.1 Imports all documents from file “domain-bk.json
” into database.collection named “webmitta2.domain2”. Alle nicht vorhandenen Datenbanken oder Sammlungen werden automatisch erstellt.
$ mongoimport -d webmitta2 -c domain2 --file domain-bk.json connected to: 127.0.0.1 Wed Apr 10 13:26:12 imported 10903 objects
2.2 Imports all documents, insert or update objects that already exist (based on the _id
).
$ mongoimport -d webmitta2 -c domain2 --file domain-bk.json --upsert connected to: 127.0.0.1 Wed Apr 10 13:26:12 imported 10903 objects
2.3 Connect to remote server – mongolab.com, using username and password, and import the documents from the local file domain-bk.json
into remote MongoDB server.
$ mongoimport -h id.mongolab.com:47307 -d heroku_app -c domain -u username123 -p password123 --file domain-bk.json connected to: id.mongolab.com:47307 Wed Apr 10 13:26:12 imported 10903 objects