mongodb的备份与恢复

mongodb的备份与恢复,第1张

mongodb的备份恢复

一.mongodump备份

mongodump主要是用于库和集合的备份,适用于数据量比较小的场景,不适用于大数据量的备份

  • 仅备份数据库中的文档,不备份索引
  • 备份过程会对mongod服务性能产生影响

使用语法:
mongodump

常用参数

参数说明-h, --host数据库ip地址–port数据库端口-u, --username数据库用户-p, --password用户密码--authenticationDatabase用户所在库--authenticationMechanism认证机制--help帮助信息--version版本信息-v, --verbose输出详细日志信息--quiet安静输出-d, --db数据库名称-c, --collection集合名称-j, --numParallelCollections备份进程数,默认4个--uri指定mongodb-uri的的登录方式-q, --query查询条件--queryFile以文件信息导入查询条件信息--readPreference=|指定一个首选项名称或首选项json对象--forceTableScan强制扫描全表-o, --out输出文件路径--gzipgzip方式压缩输出文件--repair修复文档,部分引擎支持--oplogmongodump将会在执行备份期间的oplog日志输出到文件oplog.bson,即记录备份期间的数据集 *** 作--archive归档路径--dumpDbUsersAndRoles备份创建的用户和角色--excludeCollection指定不备份的集合名称--viewsAsCollections将视图按照正常集合形式备份

测试

  • 转储成bson和json的备份文件形式
  • bson二进制文件,可以使用mongodb自带命令工具bsondump进行解析
## 备份所有库,即整个实例
./mongodump --host 127.0.0.1 --port 27017 -u root -p 123456 -o /temp/mongodb-2021-12-26

## 备份指定数据库
./mongodump --host 127.0.0.1 --port 27017 -u root -p 123456 --authenticationDatabase=admin -d test -o /temp/mongodb-test

## 备份指定的集合
./mongodump --host 127.0.0.1 --port 27017 -u root -p 123456 --authenticationDatabase=admin -d test -c test -o /temp/mongodb-test.test

## 备份指定条件
./mongodump --host 127.0.0.1 --port 27017 -u root -p 123456 --authenticationDatabase=admin -d test -c user --query='{age:"{$lt:19}"}' -o user

二.mongorestore数据恢复

mongorestore仅仅执行insert *** 作,不执行update *** 作。同时mongorestore不恢复system.profile的数据

使用语法:
mongorestore

常用参数

参数说明-h, --host数据库ip地址–port数据库端口-u, --username数据库用户-p, --password用户密码--authenticationDatabase用户所在库--authenticationMechanism认证机制--help帮助信息--version版本信息-v, --verbose输出详细日志信息--quiet安静输出-d, --db数据库名称-c, --collection集合名称--uri指定mongodb-uri的的登录方式--excludeCollection指定跳过某个或某些集合不进行恢复--excludeCollectionsWithPrefix指定跳过一系列符合某些前缀的集合不进行恢复--nsExclude指定不包含namespaces--nsInclude指定包含namespaces--nsFrom 和 --nsTo重命名namespaces,这个两个参数要同时一起使用--objcheck数据插入前进行校验--oplogReplay重放oplog进行快照恢复--oplogLimit限定恢复数据--oplogFileoplog文件路径--archive指定归档路径恢复--restoreDbUsersAndRoles恢复用户和权限--dir恢复的数据路径--gzipgzip解压--drop导入之前先删除集合--dryRun预执行,并不实际运行,可用于正在 *** 作之前进行检测--noIndexRestore不恢复索引--noOptionsRestore不恢复集合--keepIndexVersion保持索引版本不变--maintainInsertionOrder保持插入顺序-j, --numParallelCollections恢复的并发进程数,默认4--numInsertionWorkersPerCollection每个集合要并发运行的插入 *** 作数,默认1--stopOnError如果在插入时遇到错误,则停止恢复--bypassdocumentValidation忽略文档验证--preserveUUID保留原始集合uuid,默认是关闭

测试

./mongorestore --host 127.0.0.1 --port 27017 -u root -p 123456 /temp/mongodb-2021-12-26/

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5687586.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存