MongoDB数据库管理备份

本文章由博主学习阿里云MongoDB从入门到高级云上开发实战课程后整理的笔记,访问超链接即可了解更多内容

4. MongoDB数据库管理备份

4.1 MongoDB备份机制

4.1.1 MongoDB备份方式

  1. 磁盘阵列
  2. 文件系统快照Filesystem Snapshots
  3. 复制数据文件CP
  4. mongodump备份和mongorestore恢复工具
  5. mongoimport导入和mongoexport导出工具
  6. MongoDB Altas云计算平台
  7. MongoDB Cloud Manager
  8. Ops Manager企业版收费

4.1.2 MongoDB备份考量

考量 说明
Recovery Point Objective 恢复点 恢复点目标, 数据库灾难时,恢复到某个点,允许丢失的数据量
Recovery Time Objective 恢复时刻 恢复时间目标
Isolation 隔离 备份应与生产系统分开,以确保生产中断不会与备份中断相关联
Performance Impact 性能影响 备份技术对正在运行的数据库的性能有不同的影响。某些备份解决方案会降低数据库性能,因此可能需要安排备份以避免高峰使用或维护窗口。您可能决定部署新的从服务器以支持备份
Restore Process 恢复过程 恢复过程,能备份还要保证能恢复
Sharding 分片 备份分布式数据库系统(例如MongoDB分片 群集)会带来额外的复杂性。要实现真正一致的备份,必须在整个系统中暂停所有写入活动
Deployment Complexity 部署复杂性 部署复杂性,备份和维护方式尽量简单
Flexibility 灵活性 部分备份策略将提供过滤数据的灵活性。这样就不会利用资源备份系统的非关键任务组件。同样,在还原过程中,可能希望灵活地仅恢复数据的某些组件。最后,增量备份策略将仅备份自上次快照以来已更改的数据部分,使其成为比在每个快照上执行完整备份更有效和灵活的策略

4.1.3 MongoDB备份方式对比

4.1.4 mongodump备份工具

  • mongodump是官方标配的简单数据备份工具
  • mongodump创建的是二进制BSON备份数据
  • mongodump可以从mongod或mongos实例导出二进制数据
  • mongodump可用于转储整个数据库,集合或查询结果
  • mongodump可以备份正在写入的数据库,附带备份oplog数据
  • mongodump适用于小型数据库备份,不适合大型系统
  • mongodump备份机制不是增量方法
  • mongodump是资源密集型的,对系统性能会产生影响

4.1.5 mongodump备份机制

  • mongodump创建BSON备份文件, mongorestore工具恢复数据库。
  • mongodump和mongorestore针对正在运行的mongod
  • mongodump也可以直接操作底层数据文件
  • 默认情况下, mongodump不捕获local数据库的内容
  • 为了节省空间,备份不包括索引Index信息,恢复数据库要重建索引
  • 备份时, mongodump会对mongod性能产生影响
  • 对于副本集, mongodump提供了–oplog选项,包含oplog条目中
  • mongorestore可以重放捕获的oplog
  • 要恢复–oplog的备份,请使用带有–oplogReplay选项

4.1.6 MongoDB备份工具实战

备份命令:

mongodump --host 127.0.0.1 --port 27017
mongodump --out /data/backup
mongodump --collection users --db taobao
mongodump --host aliyun.com --port 3017 --username root --password "pass123" --ont dump-2018

猜你喜欢

转载自blog.csdn.net/weixin_43699716/article/details/104754786