MongoDB数据导入和导出
元数据需要事先创建好。
mongoimport
这个命令可以导入单个JSON/CSV/TSV格式的文件。文件的每一行都要是指定格式的标准格式。
需要指定一个数据库(database)和一个collection(相当于关系数据库中的表)。
×××××××××××××
options:
--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)
-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
×××××××××××××
MongoDB提供了比JSON丰富的多的数据格式,例如JSON中没有date数据类型,但是通过如下结构:
{"somefield" : 123456, "created_at" : {"$date" : 1285679232000}}
mongoimport 将create_at转换为Date类型数据了。
注意:像这里的$date这样的实现确定的数据类型必须加双引号,否则无法正确解析。
mongoexport
这个工具可以将一个collection导出为JSON为CSV格式的文件。可以指定导出哪些数据项,也可以根据给
定的条件导出数据。
如果想导出CSV格式的文件,需要指定数据项的次序。
×××××××××××××
options:
--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)
-d [ --db ] arg database to use
-c [ --collection ] arg where 'arg' is the collection to use
-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
-q [ --query ] arg query filter, as a JSON string
-f [ --fields ] arg comma seperated list of field names e.g. -f name,age
--csv export to csv instead of json
-o [ --out ] arg output file; if not specified, stdout is used
×××××××××××××
mongodump
这个用于对数据库进行备份。
×××××××××××××
options:
--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)
-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
-o [ --out ] arg (=dump) output directory
-q [ --query ] arg json query
×××××××××××××
例如:导出所有数据库中的所有collects,使用mongodump加上--host参数就可以了,在本地会产生一个dump命名的文件夹。
×××××××××××××
$ ./mongodump --host prod.example.com
connected to: prod.example.com
all dbs
DATABASE: log to dump/log
log.errors to dump/log/errors.bson
713 objects
log.analytics to dump/log/analytics.bson
234810 objects
DATABASE: blog to dump/blog
blog.posts to dump/log/blog.posts.bson
59 objects
DATABASE: admin to dump/admin
×××××××××××××
例如:导出指定数据库中的一个指定的collection,导出结果是一个.bson文件。
$ ./mongodump --db blog --collection posts
connected to: 127.0.0.1
DATABASE: blog to dump/blog
blog.posts to dump/blog/posts.bson
59 objects
在mongodb 1.7.0版本或更高的版本中,还可以将指定的collect通过标准输出流输出。
这时需要指定 --out 参数
$ ./mongodump --db blog --collection posts --out - > blogposts.bson
一次只能导出一个collection到标准输出流文件中。
mongorestore
这个工具获取mongodump的输出结果然后重新存储。重新存储的过程会加上索引。
×××××××××××××
usage: ./mongorestore [options] [directory or filename to restore from]
options:
--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)
-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
--drop drop each collection before import
--objcheck validate object before inserting
--filter arg filter to apply before inserting
--drop drop each collection before import
--indexesLast wait to add indexes (faster if data isn't inserted in
index order)
×××××××××××××
注意:如果不想创建索引的话,可以从数据库导出的文件夹(dump文件夹)中删除system.indexses.bson文件。
bsondump
这个是在1.6版本中新增加的。
这个工具将一个bson文件转换为一个json/debug输出文件。
×××××××××××××××
usage: ./bsondump [options] [filename]
options:
--help produce help message
--type arg (=json) type of output: json,debug
××××××××××××××××
分享到:
相关推荐
本项目为基于Spark和JDBC技术的MongoDB数据导入与MySQL导出处理设计源码,包含218个文件,其中包括163个数据文件、28个Python源代码文件、11个文本文件、7个XML文件、2个IDE配置文件、2个锁定文件、2个控制文件、1个...
为了将数据导入 MongoDB,我们需要使用 MongoDB 提供的工具和命令。本文将详细介绍如何使用 MongoDB 导入数据,包括使用 mongoimport 命令和 JavaScript 实现远程连接。 一、MongoDB 基础知识 MongoDB 是一个基于...
总结来说,MongoDB的`mongoexport`和`mongoimport`提供了强大的数据导入导出能力,能够灵活地处理各种数据格式,满足开发人员和管理员在数据管理中的多种需求。正确理解和使用这些工具,能有效提高工作效率,确保...
本文将深入分析MongoDB的数据导入导出,主要关注其内置工具`mongoexport`和`mongoimport`。 ### 一、MongoDB导出工具:mongoexport `mongoexport`是MongoDB提供的命令行工具,用于将MongoDB集合(collection)的...
在需要恢复数据时,可以通过`mongoimport`命令将Git仓库中的文本数据导入回MongoDB数据库,确保数据的一致性。 MongoDB是目前广泛应用的NoSQL数据库,以其灵活的文档模型、高性能和高可用性而受到青睐。`...
总之,从SQL Server到MongoDB的数据导入涉及多个阶段,包括数据准备、转换、导出、加载、验证、应用层调整和性能优化。这个过程需要深入理解两种数据库系统的特性和差异,以确保数据迁移的顺利进行,并且能够充分...
在实际操作中,确保在执行这些命令时,MongoDB服务已经启动,并且在执行导入和导出操作时,根据实际情况选择合适的格式和参数,以满足数据安全、性能和兼容性的需求。同时,对大型数据集进行操作时,可能需要考虑分...
三、MongoDB 数据导入导出 1. 导出:可以使用 `mongodump` 进行数据导出,但也可以通过 `mongoexport` 直接生成 JSON 或 CSV 文件。例如,`mongoexport --host <hostname> --port <port> --db <database_name> --...
7. 数据导入导出:可以方便地将数据导入或导出到CSV、JSON和其他格式,方便与其他系统集成或备份。 8. 分片和复制集管理:对于大型部署,Compass支持查看和管理分片集群和复制集,这对于监控和故障排查至关重要。 ...
MongoDB 是一个流行的开源、分布式文档数据库系统,以其灵活性、高性能和易用性而受到许多开发者和企业的青睐。...在实际操作中,务必根据实际情况选择合适的参数和选项,确保数据导入导出的正确性。
这种数据导入方法和系统对需要将现有Oracle数据库数据迁移到MongoDB的组织尤其有用,比如在大数据分析、互联网应用、物联网(IoT)项目等场景下,需要灵活的数据库架构和高性能的数据处理能力时。同时,对于那些希望...
8. **安全性与合规性**:在进行数据导入导出时,必须遵守数据保护法规,确保数据的安全性和隐私。这可能涉及数据加密、权限控制和审计日志记录。 总之,利用Java实现不同数据库间的导入导出是一个复杂但可实现的...
总之,Excel和数据库之间的数据导入导出是数据工作者常用的操作,理解这一过程能够提升工作效率,更好地进行数据管理和分析。无论是手动操作还是编写脚本,都需要遵循一定的最佳实践,以确保数据的准确性和系统的...
4. 数据导入导出:工具支持将数据导入到MongoDB或从MongoDB导出,可以是JSON、CSV或其他格式,便于数据迁移和备份。 5. 多服务器管理:对于运行多个MongoDB实例或分片集群的环境,可视化工具可以方便地管理多个连接...
数据库备份和数据恢复的重要性,我想大家都知道,这里就举例说明如何操作数据备份,数据恢复的实例: 创建测试数据 创建db:testdb,collection:user,插入10条记录 mongo MongoDB shell version: 3.0.2 connecting to...
4. **导入导出**:Studio 3T 支持多种格式的数据导入和导出,包括 CSV、JSON、XML 等,这对于数据迁移或数据备份非常实用。 5. **可视化聚合**:提供可视化聚合管道编辑器,帮助开发者构建和调试 MongoDB 聚合框架...
6. **数据备份和还原**:提供数据备份和还原功能,保障数据安全。 7. **数据编辑**:支持数据的增删改查操作,以及数据表结构的修改。 8. **数据可视化**:提供数据可视化工具,如ER图、数据表视图等。 9. **查询...
这就引出了我们的主题——"Mongolastic",一个专门用于在MongoDB和Elasticsearch之间双向导入导出数据的工具。 "Mongolastic"是基于Java开发的,这使得它具有跨平台的特性,可以在多种操作系统上运行。Java作为一门...