Importation et exportation de la base de données MongoDB

View more Tutorials:

1- La vue en général

MongoDB vous fournit deux manières d' import/export de la base de données:
  1. mongoexport/mongoimport
  2. mongodump/mongostore
mongoexport: Est uilisé pour  export (exporter) des données dans une  Collection à un fichier  ( json, csv,..)
mongoimport: Est utilisé pour  import (importer) des données dans une​​​​​​​ Collection à un fichier ( json, csv,..)
Collection est le concept de  MongoDB, qui est équivalant aux concepts de  Table dans la base de données relationnelle ( Oracle, SQL Server, MySQL,..).
mongodump: Étant utilisé pour  export (exporter) toutes les données à une base de données aux fichiers (Mettre dans un dossier), y compris des fichiers ( bson, json)

mongostore: Étant utilisé pour import (importer) toutes les données à une base de données aux fichiers​​​​​​​ dump (Le produit de  mongodump)

2- Import/Export Collection

2.1- mongoexport

# Export to json
mongoexport -d database_name - c collection_name -o outfile.json


# Export to file csv
mongoexport --csv -o /tmp/people.csv -d school -c people -f firstName,lastName,telephone,email

2.1.1- mongoexport ra file json

Au cas d'un  export simple, vous ne devez pas utiliser beacoup d ' option (option) dans la commande  mongoexport:
# Export to json file
# This is the simplest syntax.
# The default output is json file so you do not need to specify the output file type

mongoexport -d database_name -c collection_name -o outfile.json

Par exemple: exporter une collection au fichier JSON.

cd C:\DevPrograms\MongoDB\bin
Exporter la collection Department dans la base de données  myfirstdb au fichier  jsonC:/test/department.json.

Remarque: MongoDB distingue entre les lettre majuscule et celle de minuscule, il faut donc faire attention lorsque vous donnez le nom de collection. Pour le mieux, vous devez unifier la manière de nommer collection qui commence avec des lettre en majuscule. Par exemple:

  • Department
  • Employee
  • Inventory_Item
  • Product_Category
mongoexport -d myfirstdb -c Department -o C:/test/department.json
 
Résultats:
Voyez le nouveau fichier  export:

2.1.2- mongoexport to csv file

# Export to csv file
# This is the simplest syntax:
# In the case csv file, you must provide the list of columns Collection (Required).
# List of columns separated by commas and no spaces.
# Must declare what type of output file (--csv)

mongoexport -d database_name -c collection_name -f column_1,column_2,column_3 --csv -o outfile.csv
mongoexport -d myfirstdb -c Department -f dept_id,dept_no,dept_name,location,description --csv -o C:/test/department.csv
Ouvrez  department.csv par  Microsoft Excel:

2.1.3- mongoexport and options

  • TODO

2.2- mongoimport

# Import from json file
mongoimport -d database_name -c collection_name outfile.json



# Import from csv file
# --headerline: Using the first row of data as the column name of the Collection.
mongoimport -d database_name -c collection_name --type csv --file locations.csv --headerline

2.2.1- mongoimport from json file

Import des données à partir un fichier  json dans une  Collection:
cd C:\DevPrograms\MongoDB\bin
# Import from json file.
mongoimport -d database_name -c collection_name outfile.json

# Import into myfirstdb database
# Insert into Collection: Department2
# From file C:/test/department.json
mongoimport -d myfirstdb -c Department2 C:/test/department.json
Voir le résultat sur des outils virtuels  RoboMongo:

2.2.2- mongoimport from csv file

Import des données à partir d'un fichier  csv dans une  Collection:
# Import from csv file
# This is the simplest syntax:
# --headerline: Using the first row of data as the column name of the Collection.


mongoimport -d database_name -c collection_name --type csv --file locations.csv --headerline
cd C:\DevPrograms\MongoDB\bin
 
# Import from file to database: myfirstdb
# Into collection: Department3
# File location: C:/test/department.csv
# --headerline: Using the first row of data as the column name of the Collection.

mongoimport -d myfirstdb -c Department3 --type csv --file C:/test/department.csv --headerline
Le résultat observé sur l'outil virtuel  RoboMongo:

2.3- mongoexport/mongoimport and options

Dans une situation générale, vous avez des options (option) pour  import/export qui sont listées dans la table ci-dessous:
Option  Meaning Example
--help produce help message  
-v [ --verbose ] be more verbose (include multiple times for more verbosity e.g. -vvvvv)  
-h [ --host ] arg mongo host to connect to ("left,right" for pairs)  
--port arg server port. (Can also use --host hostname:port)  
--ipv6 enable IPv6 support (disabled by default)  
-d [ --db ] arg database to use  
-c [ --collection ] arg collection to use (some commands)  
-u [ --username ] arg username  
-p [ --password ] arg password  
--dbpath arg directly access mongod data files in the given path,instead of connecting to a mongod instance - needs to lock the data directory, so cannot be used if a mongod is currently accessing the same path  
--directoryperdb if dbpath specified, each db is in a separate directory  
-f [ --fields ] arg comma seperated list of field names e.g. -f name,age  
--fieldFile arg file with fields names - 1 per line  
--ignoreBlanks if given, empty fields in csv and tsv will be ignored  
--type arg type of file to import.  default: json (json,csv,tsv)  
--file arg file to import from; if not specified stdin is used  
--drop drop collection first  
--headerline CSV,TSV only - use first line as headers  
--upsert insert or update objects that already exist  
--upsertFields arg comma-separated fields for the query part of the upsert. You should make sure this is indexed.  
--stopOnError stop importing at the first error rather  than continuing  
--jsonArray load a json array, not one item per line. Currently limited to 4MB.  

3- Import/Export Database

mongodump a utilisé pour  export (exporter) l'entité de la base de données  Mongo à un dossier:
mongostore a utilisé pour import (importer) l'entité de la base de données d'un répertoire (le produit de  mongodump) à une base de données.

3.1- mongodump

# The syntax to export the entire database to a directory (Includes some files)

mongodump -d database_name -o output_directory
Exemple:
Export l'entité de la base de données  myfirstdb à une directive  C:/test

cd C:\DevPrograms\MongoDB\bin
mongodump -d myfirstdb -o C:/test
Le résultat, le sous- dossier  myfirstdb a créé dans le directive  C:/test, il comprend quelques fichiers.

3.2- mongorestore

# The simplest syntax to import an entire database.

mongorestore -d database_name path_to_database
Ví dụ thư mục C:/test/myfirstdb chứa các file được dump ra trước đó. Chúng ta sẽ sử dụng nó để import vào cơ sở dữ liệu: mydb2
cd C:\DevPrograms\MongoDB\bin
mongorestore -d mydb2 C:\test\myfirstdb
Voyez sur l'outil virtuel  RoboMongo:

View more Tutorials: