Import và Export cơ sở dữ liệu MongoDB
1. Tổng quan
MongoDB cung cấp cho bạn 2 cách để import/export cơ sở dữ liệu:
- mongoexport/mongoimport
- mongodump/mongostore
mongoexport: Sử dụng để export (xuất khẩu) dữ liệu từ một Collection ra một file (json, csv,..)
mongoimport: Sử dụng để import (nhập khẩu) dữ liệu vào một Collection từ một file (json, csv,..)
mongoimport: Sử dụng để import (nhập khẩu) dữ liệu vào một Collection từ một file (json, csv,..)
Collection là khái niệm của MongoDB, nó tương đương với khái niệm Table trong cơ sở dữ liệu quan hệ (Oracle, SQL Server, MySQL,..).
mongodump: Sử dụng để export (xuất khẩu) toàn bộ dữ liệu của một database ra các file (Để vào trong một thư mục), bao gồm một số file (bson, json)
mongostore: Sử dụng để import (nhập khẩu) dữ liệu vào một database từ thư mục dump (Sản phẩm của mongodump nói trên)
mongostore: Sử dụng để import (nhập khẩu) dữ liệu vào một database từ thư mục dump (Sản phẩm của mongodump nói trên)
2. Import/Export Collection
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
mongoimport
# Import từ file json
mongoimport -d database_name -c collection_name outfile.json
# Import từ file csv
# --headerline: Thông báo rằng sẽ sử dụng dòng dữ liệu đầu tiên làm tên các cột của Collection.
mongoimport -d database_name -c collection_name --type csv --file locations.csv --headerline
mongoexport/mongoimport và các lựa chọn
Trong trường hợp tổng quát bạn có các tùy chọn (option) để import/export liệt kê trong bảng dưới đây:
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 sử dụng để export (xuất khẩu) toàn bộ một cơ sở dữ liệu Mongo ra một thư mục:
mongostore sử dụng để import (nhập khẩu) toàn bộ dữ liệu từ một thư mục (sản phẩm của mongodump) vào một database.
mongostore sử dụng để import (nhập khẩu) toàn bộ dữ liệu từ một thư mục (sản phẩm của mongodump) vào một database.
mongodump
# Cú pháp export toàn bộ database ra một thư mục (Gồm một số file)
mongodump -d database_name -o output_directory
Ví dụ:
Export toàn bộ cơ sở dữ liệu myfirstdb ra thư mục C:/test
Export toàn bộ cơ sở dữ liệu myfirstdb ra thư mục C:/test
cd C:\DevPrograms\MongoDB\bin
mongodump -d myfirstdb -o C:/test
Kết quả, thư mục con myfirstdb được tạo ra trong thư mục C:/test, nó chứa một số file.
mongorestore
# Cú pháp import toàn bộ một database ở dạng đơn giản nhất.
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
Xem kết quả trên công cụ trực quan RoboMongo:
Cơ sở dữ liệu khác
- Cài đặt cơ sở dữ liệu MongoDB trên Windows
- Cài đặt RoboMongo trên Windows
- Import và Export cơ sở dữ liệu MongoDB
- Cơ sở dữ liệu MongoDB mẫu để học NoSQL
- Hướng dẫn lập trình Java với MongoDB
- Cài đặt cơ sở dữ liệu HSQLDB trên Windows
- Cấu hình HSQLDB DataSource sử dụng Data Source Explorer
- Cài đặt cơ sở dữ liệu H2 và sử dụng H2 Console
Show More