作为一名运维工程师,在日常工作中会时常对各类重要数据进行备份,为了方便管理,运用何种备份方案是至关重要的。
今天在此简单说明下Linux运维中的备份种类:全量备份、增量备份、差异备份。

一、首先说一下什么是存档属性?
“存档”属性表示此文件、文件夹的备份属性,只是提供给备份程序使用,当未选中时,备份程序就会认为此文件已经“备份过”,可以不用再备份了。所以,当备份程序备份了一个文件时,默认是未选中“存档”属性。
换句话说备份软件把已经备份过的文件的存档属性去掉,表示已经备份。如果对该文件进行修改,会重新添加存档属性。下次启动备份软件,检查存档属性,没有的就是上次备份以来没改变的,有的就是上次备份
以来由改变的,这样就可以实现“增量备份” -只备份变化了的数据。

二、备份种类介绍
1)全量备份
备份全部选中的文件夹,并不依赖文件的存档属性来确定备份那些文件。(在备份过程中,任何现有的标记都被清除,每个文件都被标记为已备份,换言之,清除存档属性)。
全量备份就是指对某一个时间点上的所有数据或应用进行的一个完全拷贝。实际应用中就是用一盘磁带对整个系统进行全量备份,包括其中的系统和所有数据。这种备份方式最大的好处就是只要用一盘磁带,就可以恢复丢失的数据。因此大大加快了系统或数据的恢复时间。然而它的不足之处在于,各个全备份磁带中的备份数据存在大量的重复信息;另外,由于每次需要备份的数据量相当大,因此备份所需时间较长。

2)增量备份
增量备份是针对于上一次备份(无论是哪种备份):备份上一次备份后(包含全量备份、差异备份、增量备份),所有发生变化的文件。(增量备份过程中,只备份有标记的选中的文件和文件夹,它清除标记,既:备份后标记文件,换言之,清除存档属性)。
增量备份是指在一次全备份或上一次增量备份后,以后每次的备份只需备份与前一次相比增加和者被修改的文件。这就意味着,第一次增量备份的对象是进行全备后所产生的增加和修改的文件;第二次增量备份的对象是进行第一次增量备份后所产生的增加和修改的文件,如此类推。这种备份方式最显著的优点就是:没有重复的备份数据,因此备份的数据量不大,备份所需的时间很短。但增量备份的数据恢复是比较麻烦的。您必须具有上一次全备份和所有增量备份磁带(一旦丢失或损坏其中的一盘磁带,就会造成恢复的失败),并且它们必须沿着从全备份到依次增量备份的时间顺序逐个反推恢复,因此这就极大地延长了恢复时间。

举例来说:
如果系统在星期四的早晨发生故障,丢失大批数据,那么现在就需要将系统恢复到星期三晚上的状态。这时管理员需要首先找出星期一的那盘完全备份磁带进行系统恢复,然后再找出星期二的磁带来恢复星期二的数据,然后在找出星期三的磁带来恢复星期三的数据。很明显这比第一种策略要麻烦得多。另外这种备份可靠性也差。在这种备份下,各磁带间的关系就象链子一样,一环套一环,其中任何一盘磁带出了问题都会导致整条链子脱节。
这种备份方式最显著的优点就是:没有重复的备份数据,因此备份的数据量不大,备份所需的时间很短。但增量备份的数据恢复是比较麻烦的。您必须具有上一次全备份和所有增量备份磁带(一旦丢失或损坏其中的一盘磁带,就会造成恢复的失败),并且它们必须沿着从全量备份到依次增量备份的时间顺序逐个反推恢复,因此这就极大地延长了恢复时间。

3)差异备份
差异备份是针对完全备份:备份上一次的完全备份后发生变化的所有文件。(差异备份过程中,只备份有标记的那些选中的文件和文件夹。它不清除标记,既:备份后不标记为已备份文件,换言之,不清除存档属性)。
差异备份是指在一次全备份后到进行差异备份的这段时间内,对那些增加或者修改文件的备份。在进行恢复时,我们只需对第一次全量备份和最后一次差异备份进行恢复。差异备份在避免了另外两种备份策略缺陷的同时,又具备了它们各自的优点。首先,它具有了增量备份需要时间短、节省磁盘空间的优势;其次,它又具有了全备份恢复所需磁带少、恢复时间短的特点。系统管理员只需要两盘磁带,即全备份磁带与灾难发生前一天的差异备份磁带,就可以将系统恢复。

举例来说:
在星期一,网络管理员按惯例进行系统全量备份;在星期二,假设系统内只多了一个资产清单,于是管理员只需将这份资产清单一并备份下来即可;在星期三,系统内又多了一份产品目录,于是管理员不仅要将这份目录,还要连同星期二的那份资产清单一并备份下来。如果在星期四系统内有多了一张工资表,那么星期四需要备份的内容就是:工资表+产品目录+资产清单。
差异备份在避免了另外两种备份策略缺陷的同时,又具备了它们各自的优点。首先,它具有了增量备份需要时间短、节省磁盘空间的优势;其次,它又具有了全量备份恢复所需磁带少、恢复时间短的特点。系统管理员只需要两盘磁带,即全备份磁带与灾难发生前一天的差异备份磁带,就可以将系统恢复。

三、比较
1)按备份数据量,从多到少排序:
全量备份->差异备份->增量备份
2)按数据恢复速度,从快到慢排序:
全量备份->差异备份->增量备份

四、不同备份类型组合说明
1)全量备份和增量备份结合
以每周数据备份为例,在星期一进行全量备份,在星期二至星期五进行增量备份。如果在星期五数据被破坏了,则你需要还原星期一的完全备份和从星期二至星期五的所有增量备份。这种策略备份数据需要较少的时间,但还原数据使用较多的时间。还原数据的步骤是这样的:先还原周一的完全备份,然后依次还原周二至周四的增量备份。总共 4 次还原过程。

2)全量备份和差异备份结合(建议使用)
以每周数据备份计划为例,在星期一进行全量备份,在星期二至星期五进行差异备份。如果在星期五数据被破坏了,则你只需要还原星期一完全的备份和星期四的差异备份。这种策略备份数据需要较多的时间,但还原数据使用较少的时间。还原的步骤:先还原周一的完全备份,然后直接用周四的差异备份导入。共2 次还原步骤。

全量备份/增量备份/差异备份说明相关推荐

  1. 看完,你就理解什么是数据的全量、增量、差异备份了

    在很远很远的地方,有一个帐房先生. 他每天要记很多很多的账单. 老先生一生谨慎,为了保证账本的安全, 便找来三个徒弟帮忙来对账本做备份, 这样即使账本丢失了, 也可以用备份的账本继续使用. 三个徒弟各 ...

  2. python 读取文件夹 增量文件_Python实现目录文件的全量和增量备份

    目标: 1.传入3个参数:源文件路径,目标文件路径,md5文件 2.每周一实现全量备份,其余时间增量备份 1.通过传入的路径,获取该路径下面的所有目录和文件(递归) 方法一:使用os.listdir ...

  3. MySQL数据库全量、增量备份与恢复

    MySQL数据库全量.增量备份与恢复 数据库备份的重要性 在生产的环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果. 造成数据丢失的原因 程序错误 人为商店 计算机失败 磁盘失败 ...

  4. Python实现目录文件的全量和增量备份

    目标: 1.传入3个参数:源文件路径,目标文件路径,md5文件 2.每周一实现全量备份,其余时间增量备份 1.通过传入的路径,获取该路径下面的所有目录和文件(递归) 方法一:使用os.listdir ...

  5. Linux随笔19-MySQL主从复制、Percona XtraBackup实现全量和增量备份、ProxySQL实现读写分离

    Contents 1. MySQL5.7实现主从复制 1.1 基础环境 1.2. 配置主从复制 1.2.1. master节点上的配置 1.2.2. slave节点上的配置 1.2.3. 中继日志问题 ...

  6. 【SQL Server备份恢复】维护计划实现备份:每周数据库完整备份、每天差异备份、每小时日志备份...

    在数据库管理中,数据库备份是非常重要的. 通过维护计划向导,可以很方便的完成数据库备份. 下面的例子说明了如何实现数据库的备份,具体的备份策略是:每周日一次完整备份.每天差异备份(除周日外).每小时日 ...

  7. MySQL数据以全量和增量方式,向ES搜索引擎同步流程

    本文源码:GitHub·点这里 || GitEE·点这里 一.配置详解 场景描述:MySQL数据表以全量和增量的方式向ElasticSearch搜索引擎同步. 1.下载内容 elasticsearch ...

  8. Sqoop导出模式——全量、增量insert、更新update的介绍以及脚本示例

    背景信息 SQOOP支持直接从Hive表到RDBMS表的导出操作,也支持HDFS到RDBMS表的操作, 当前需求是从Hive中导出数据到RDBMS,有如下两种方案: Ø  从Hive表到RDBMS表的 ...

  9. mongodb数据同步到elasticsearch的中间件,支持全量,增量,实时同步等多种同步情景。(syncs MongoDB to Elasticsearch in realtime) (Mong

    GitHub - levonmo/mongo-sync-elasticsearch: mongodb数据同步到elasticsearch的中间件,支持全量,增量(新增修改删除),实时同步等多种同步情景 ...

  10. 关于全量与增量 的思考

    一.数据同步:全量与增量 1.背景 数据如果保留多份,就会存在一致性问题,就需要同步,同步分为两大类:全量和增量 2. 概述 数据如果要保留副本,要么同时写(就是多写),或者进行复制:异步写(即从主数 ...

最新文章

  1. 作为程序员,你在编程中吃了哪些数学的亏?
  2. Msdn 杂志 asp.net ajax 文章汇集
  3. Orchard之模版开发
  4. 图灵原版计算机科学系列,图灵原版计算科学系列
  5. Linux下配置DNS服务器之一--Master服务器
  6. python弹球游戏绑定鼠标事件_用python和pygame游戏编程入门-弹球[鼠标控制]
  7. 计算机硬件:内存条的基础知识笔记
  8. 我发现我的Java重拍了!
  9. 配置文件管理服务器,06-配置文件管理
  10. saltstack常用参数
  11. 【温故而知新】HTTP 报文
  12. 系统学习NLP(二)--语音合成的计算机处理综述
  13. android内存泄漏MAT,利用Android Studio、MAT对Android进行内存泄漏检测
  14. 航测和倾斜摄影处理软件汇总
  15. 技术人应该如何提升影响力
  16. mysql姓氏笔画排序_php根据姓氏笔画排序怎么做
  17. Python-TypeError:takes no arguments
  18. 十六进制配色(ggplot2配色)
  19. java.lang.IllegalStateException: Bindings already cleared.
  20. Android UI开发详解之ActionBar

热门文章

  1. 复杂网络分析 08网络节点重要性
  2. php通过strtotime获取想要的日期
  3. Week_eight
  4. tl-wdr7300虚拟服务器怎么设置,TP-Link TL-WDR7300路由器无线桥接怎么设置?
  5. uview 瀑布流_最简单的微信小程序瀑布流布局方法
  6. 马尔科夫链预测,Python实现
  7. javascript 之排列组合
  8. Office办公 如何设置WPS的默认背景大小
  9. the work directory /tmp/ oracle,Oracle升级问题总结
  10. ARFoundation☀️ 八、SARF:ARFoundation可视化插件