mongorestore 使用方法
mongorestore 是 MongoDB 的一个实用工具,用于将通过 mongodump 导出的 BSON 文件恢复到 MongoDB 数据库中,方便数据恢复、迁移等操作。
基本语法
mongorestore --host <hostname> --port <port> --username <username> --password <password> --authenticationDatabase <authDB> --db <database> --collection <collection> --drop <dump_directory>
常用参数说明
--host:指定 MongoDB 服务器的主机名或 IP 地址,默认为 localhost。
--port:指定 MongoDB 服务器的端口号,默认为 27017。
--username 和 --password:用于连接到 MongoDB 服务器时的用户名和密码,如果服务器启用了认证。
--authenticationDatabase:指定用于认证的数据库名称,如果认证信息存储在非默认数据库中。
--db:指定要恢复数据的数据库名称。如果不指定,则根据 BSON 文件中的信息恢复到原数据库。
--collection:指定要恢复数据的集合名称。如果不指定,则恢复整个数据库的所有集合。
--drop:在恢复数据之前,先删除目标集合中的所有数据。使用该参数时需谨慎,因为它会删除现有数据。
--\<dump_directory>:指定包含 BSON 文件的目录路径,该目录应该是 mongodump 命令导出数据时指定的输出目录。
示例
恢复整个数据库
mongorestore --host localhost --port 27017 --db mydatabase /path/to/dump_directory/mydatabase
这会将 /path/to/dump_directory/mydatabase 目录下的所有 BSON 文件恢复到 mydatabase 数据库中。
恢复指定集合
mongorestore --host localhost --port 27017 --db mydatabase --collection mycollection /path/to/dump_directory/mydatabase/mycollection.bson
只会将 mycollection.bson 文件中的数据恢复到 mydatabase 数据库的 mycollection 集合中。
连接认证的 MongoDB 服务器
mongorestore --host localhost --port 27017 --username myuser --password mypassword --authenticationDatabase admin --db mydatabase /path/to/dump_directory/mydatabase
当 MongoDB 服务器启用了认证时,需要提供用户名、密码以及认证数据库等信息。
恢复前删除目标集合数据
mongorestore --host localhost --port 27017 --db mydatabase --collection mycollection --drop /path/to/dump_directory/mydatabase/mycollection.bson
在恢复 mycollection 集合的数据之前,会先删除该集合中已有的所有数据。
从特定 BSON 文件恢复
mongorestore --host localhost --port 27017 --db mydatabase /path/to/dump_directory/mydatabase/mycollection.bson
直接从指定的 BSON 文件恢复数据到 mydatabase 数据库中,集合名称根据 BSON 文件名确定。
导出时有archive参数
mongorestore --username myuser --password mypassword --archive=backup.archive --db mydatabase
注意事项
在使用 --drop 参数之前,请确保已经备份了目标数据库或集合中的重要数据,因为该参数会删除现有数据。
恢复数据时,目标数据库或集合的结构和数据类型应与导出时一致,以避免数据恢复过程中出现错误。
恢复大量数据时,可能会对数据库性能产生一定影响,建议在低峰时段进行恢复操作。
如果 BSON 文件所在的目录结构与 mongodump 导出时的结构不一致,可能需要手动调整目录结构或指定正确的 BSON 文件路径。
本文发布于2025年01月13日12:58
,已经过了102天,若内容或图片失效,请留言反馈
转载请注明出处: 皮哈皮阿
本文的链接地址: https://blog.phpat.com/dev/565.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是个新的开始
“生命是属于每个人自己的感受,不属于任何别人的看法。”