MongoDB的常规备份策略

MongoDB的常规备份策略
1 冷备份--复制数据库文件
2 mongodump/mongorestore
除了mongodump/mongorestore之外还有一对组合是mongoexport/mongoimport
区别:
mongoexport/mongoimport导入/导出的是JSON格式,而mongodump/mongorestore导入/导出的是BSON格式。
JSON可读性强但体积较大,BSON则是二进制文件,体积小但对人类几乎没有可读性。
BSON格式即mongodump/mongorestore跨版本可能会失败,JSON格式即mongoexport/mongoimport可以跨版本操作
JSON格式只保留了数据部分,不保留索引,账户等其他基础信息。

mongodump备份选项--oplog
注意这是replica set或者master/slave模式专用,--oplog选项只对全库导出有效,所以不能指定-d选项。因为整个实例的变更操作都会集中在local库中的oplog.rs集合中。
实际作用是在导出的同时生成一个oplog.bson文件,存放在你开始进行dump到dump结束之间所有的oplog
在replica set中oplog是一个定容集合(capped collection),它的默认大小是磁盘空间的5%(可以通过--oplogSizeMB参数修改),位于local库的db.oplog.rs
其中记录的是整个mongod实例一段时间内数据库的所有变更(插入/更新/删除)操作。当空间用完时新记录自动覆盖最老的记录
其覆盖范围被称作oplog时间窗口。需要注意的是,因为oplog是一个定容集合,所以时间窗口能覆盖的范围会因为你单位时间内的更新次数不同而变化

简单说备份会产生两个文件:数据库文件和oplog.bson文件,数据库文件存放备份开始到结束时间段内某个时间的数据,
oplog.bson文件存放的是dump开始的时间系统将修改记录到oplog.bson

数据恢复的时候先恢复数据文件,之后再恢复oplog.bson内数据

时间: 2024-08-25 01:27:02

MongoDB的常规备份策略的相关文章

Linux系统备份策略详解

由于linux系统的特殊性,获取root用户权限后,很容易把系统搞崩溃,所以系统备份是一件不容忽视的大事.得益于linux系统自身的优越性,所以系统的备份和还原操作还是相对简单的. Linux系统所有的数据都以文件的形式存在,所以备份就是直接拷贝文件;硬盘分区也被当成文件,所以可以直接克隆硬盘数据. Linux系统自带很多实用工具,比如tar.dd.rsync等,备份还原系统不需要购买或下载第三方软件. Linux系统在运行时其硬盘上的文件可以直接被覆盖,所以还原系统的时候不需要另外的引导盘.

MongoDB 权限、备份、还原、去重

MongoDB 权限.备份.还原.去重 权限 数据安全是数据库至关重要的一部分,那么下面是设置MongoDB的用户权限的大致过程. 首先,在无授权模式下新建数据库管理员: 启动数据库服务: mongod 启用命名行工具: mongo use admin db.createUser({user:"gly",pwd:"[email protected]",roles:[{role:"userAdminAnyDatabase",db:"adm

Oracle RMAN备份策略

建立增量备份:如果数据库运行于不归档模式下,只能在数据库干净关闭的情况下 ( 以 normal .immediate . transactional 方式关闭 ) 才能进行一致性的增量备份,如果数据库运行于归档模式下,那即可以在数据库关闭状态进行,也可以在数据库打开状态进行备份.再次说明了打开归档模式的优势,归档日志也就是多占些磁盘空间,可也相当于又给数据加了层保护.建立增量备份,实质就是一个参数 incremental level=n ,在执行 backup命令时加上即可,例如,建立一个增量级

Note For Linux By Jes(19)-Linux 备份策略

备份要点: 备份数据的考量: 备份哪些文件: 哪些数据对系统或使用者来说是重要的?那些数据就是值得备份的数据!例如/etc/* 及/home/* 等. 选择什么备份的媒介: 是可读写光盘.另一颗硬盘.同一颗硬盘的不同partition.还是使用网络备援系统?哪一种的速度最快,最便宜,可将数据保存最久?这都可以考虑的. 考虑备份的方式: 是以完整备份(类似ghost)来备份所有数据,还是使用差异备份仅备份有被更动过的数据即可? 备份的频率: 例如MySQL 数据库是否天天备份.若完整备份,需要多久

RMAN兼容性、控制文件自动备份、保存时间、备份策略、备份脚本(二)

RMAN 程序的兼容性 RMAN 环境由以下5部分组成:(1) RMAN executable(2) Recovery catalog database(3) Recovery catalog schema in the recovery catalog database(4) Target database(5) Auxiliary database (used forduplicate, duplicate for standby or tablespace point-in-time re

linux系统下网络主-备份策略之网卡bonding技术

操作系统:CentOS Linux release 7.1.1503 (Core) 网卡适配器: eno1.eno2 bonding类型:mode=1 (active-backup),主-备份策略 网卡绑定mode共有七种,每种模式,都有各自的用处,笔者由于在工作中使用的是mode=1 (active-backup)模式 在此笔者将工作中使用到的网卡绑定bonding技术的mode=1 (active-backup)模式的配置实现过程记录如下: 1.在Centos 7中,我们可以使用modinf

Linux备份策略解析

搞Linux运维的小伙伴都知道,备份对于系统安全来说是多么的重要.既然那么重要,就值得我拿出很长的篇幅来讲解这个问题.好吧,我们言归正传. 对于Linux操作系统,在我们的日常工作中,如果硬件支持且经费充足的情况之下,当然我们可以选择采用完全备份的方式进行整个磁盘的备份.但是一般情况下,经费是不允许滴,这时候我们就没办法直接进行完全备份喽,那么怎么办呢?当然是备份关键数据了,诸君且听我慢慢道来! 再谈及备份方式之前,我们先来说一下究竟有哪些目录或者文件是需要我们进行备份的: ① /boot 整个

mysql常用的备份命令与备份策略

MySQL常用的备份命令 mysqldump备份常用方法: 1.导出一个数据库    mysqldump -u用户名 -p密码 数据库名 > 导出的文件名     例如      # mysqldump -hhostname -uroot -ppwd dataname >dataname.sql 2.备份服务器上所有数据库 例如       # mysqldump --all-databases > allbackupfile.sql  3.备份一个表 mysqldump -u用户名 -

11.6 优化备份策略

11.6 优化备份策略 11.6.1 备份策略的对应需求 恢复数据库可以视为数据库高可用性的一个解决方案,往往在数据库发生灾难事件时这是最后的可行方案.作为一个高可用性解决方案,它必须考虑恢复时的2个指标: ◆ RTO(可容忍的脱机恢复时间) 这个指标用来衡量这个数据库可以脱机多长时间.如果脱机时间过长,恢复数据库的时间成本可能超过因丢失部分数据而导致的损失. ◆ RPO(可容忍的恢复点) 考虑到备份时会影响数据库的性能,存储备份介质也需要一定的成本,因此需要权衡对数据库备份的各项成本因素.例如