mongodump 是 MongoDB 的一个实用工具,用于将 MongoDB 数据库中的数据导出为 BSON 文件,方便数据备份、迁移等操作。
基本语法
mongodump --host <hostname> --port <port> --username <username> --password <password> --authenticationDatabase <authDB> --db <database> --collection <collection> --out <output_directory>
常用参数说明
--host:指定 MongoDB 服务器的主机名或 IP 地址,默认为 localhost。
--port:指定 MongoDB 服务器的端口号,默认为 27017。
--username 和 --password:用于连接到 MongoDB 服务器时的用户名和密码,如果服务器启用了认证。
--authenticationDatabase:指定用于认证的数据库名称,如果认证信息存储在非默认数据库中。
--db:指定要导出的数据库名称。
--collection:指定要导出的集合名称,如果不指定则导出整个数据库的所有集合。
--out:指定导出数据的存储目录,默认为当前目录下的 dump 文件夹。
示例
导出整个数据库
mongodump --host localhost --port 27017 --db mydatabase --out /path/to/dump_directory
这会将 mydatabase 数据库中的所有集合导出到 /path/to/dump_directory 目录下。
导出指定集合
mongodump --host localhost --port 27017 --db mydatabase --collection mycollection --out /path/to/dump_directory
只会导出 mydatabase 数据库中的 mycollection 集合数据。
连接认证的 MongoDB 服务器
mongodump --host localhost --port 27017 --username myuser --password mypassword --authenticationDatabase admin --db mydatabase --out /path/to/dump_directory
当 MongoDB 服务器启用了认证时,需要提供用户名、密码以及认证数据库等信息。
导出到特定格式
导出为 BSON 格式(默认格式)
mongodump --host localhost --port 27017 --db mydatabase --out /path/to/dump_directory
导出的数据会以 BSON 文件的形式存储在指定目录下,每个集合对应一个 BSON 文件。
导出为 JSON 格式
mongodump --host localhost --port 27017 --db mydatabase --out /path/to/dump_directory --jsonArray
使用 --jsonArray 参数可以将导出的数据以 JSON 数组的形式存储,每个集合对应一个 JSON 文件。
导出时指定查询条件
mongodump --host localhost --port 27017 --db mydatabase --collection mycollection --query '{"field": "value"}' --out /path/to/dump_directory
通过 --query 参数可以指定查询条件,只导出满足条件的文档。
导出时排除某些字段
mongodump --host localhost --port 27017 --db mydatabase --collection mycollection --excludeFields '{"field1": 1, "field2": 1}' --out /path/to/dump_directory
使用 --excludeFields 参数可以指定要排除的字段,导出时不包含这些字段。
导出时包含某些字段
mongodump --host localhost --port 27017 --db mydatabase --collection mycollection --includeFields '{"field1": 1, "field2": 1}' --out /path/to/dump_directory
使用 --includeFields 参数可以指定要包含的字段,只导出这些字段的数据。
注意事项
确保有足够的磁盘空间来存储导出的数据,因为 BSON 文件可能会占用较大的空间。
导出过程中,数据库的性能可能会受到影响,特别是在数据量较大的情况下,建议在低峰时段进行导出操作。
如果需要频繁地进行数据备份,可以考虑使用 MongoDB 的备份服务或自动化脚本来定期执行 mongodump 命令。
本文发布于2025年01月13日12:46
,已经过了102天,若内容或图片失效,请留言反馈
转载请注明出处: 皮哈皮阿
本文的链接地址: https://blog.phpat.com/dev/564.html
-
emlog主题模板 beginning 更新至v2.6.1
最近更新:更新到v2.5.7
2017/08/02
-
element-ui Radio 单选框组件默认值选不中?
请求中为数字/布尔的字段要多加注意,类型问题会导致很多bug出现。
2019/02/12
-
基于emlog开发的微信小程序开源了
基于emlog开发的微信小程序
2018/01/18
-
emlog模版仿小米论坛版本: V2.0
仿小米论坛版本更新V2.0,本次暂时更新这样了,以后会持续更新优化的。
2012/08/07
-
element-ui el-table 表格疯狂抖动跳动不停
element-ui el-table 表格疯狂抖动跳动不停, 这究竟是道德的沦丧还是人性的毁灭.~~
2019/07/11
-
Windows7程序图标无法锁定到任务栏的解决办法
2012/07/19
暂无评论
emlog简约社区模版发布了。
今天的你,戴口罩了吗? 没戴?小心病毒安排你跳社会摇!🕺 记得勤洗手,冲掉坏运气~ 积极防护,保护自己,晴天咱们一起当人群里最靓的仔!✨
2019加油!钱包要鼓,头发要多,烦恼要少,快乐要爆。愿你工作摸鱼得潇洒,生活撒欢得漂亮!别怕,宇宙都在暗中支持你!
人生真的是多姿多彩
不是每朵白云,都会带来真情;不是每个拥抱,都会面带微笑;不是每次思念,都能立刻兑现;不是每个朋友,都在身边守候;不是每个日子,都逢良辰吉时。国庆节到了,愿你节日快乐!
昨天和今天有什么不同
经朋友提示,Beginning模板一周年了,恭喜。 好事总会发生,敬请期待更好的作品
beginning模板越来越好了[耶]
2018是个新的开始
“生命是属于每个人自己的感受,不属于任何别人的看法。”