9.11、mysql增量备份和增量恢复介绍

1、增量备份:

增量数据是从上次全量备份之后,更新的新数据,对于mysql来说,binlog日志就是mysql的增量数据;

(1)按天进行备份:


周一00点全量备份


周二00点全量备份


......


01.sql.gz


02.sql.gz


......


周一增量备份


周二增量备份


......


mysql-bin.000001

mysql-bin.000002

mysql-bin.000003

mysql-bin.index


mysql-bin.000004

mysql-bin.000005

mysql-bin.000006

mysql-bin.index


......

1)优点:恢复时间短,维护成本低;

2)缺点:占用空间多,占用系统资源多,经常锁表影响用户的体验;

(2)按周进行备份:


周六00全量备份


01.sql.gz


01.sql.gz


01.sql.gz


周一增量备份


周二增量备份


周三增量备份


mysql-bin.000001

mysql-bin.000002

mysql-bin.000003

mysql-bin.index


mysql-bin.000004

mysql-bin.000005

mysql-bin.000006

mysql-bin.index


mysql-bin.000007

mysql-bin.000008

mysql-bin.000009

mysql-bin.index

1)优点:节省备份时间,减小本分压力;

2)缺点:增量的binlog文件副本太多,还原会比较的麻烦;

(3)企业场景全量和增量的频率是怎么做的:

1)中小公司,全量一般是一天一次,业务流量低谷时执行全被,备份时会锁表;

2)大公司周备,每周六00点一次全量备份,下周日到周六前都是增量;

3)如何增量:

使用rsync+inotify(rsync+sersync)把所有的binlog备份到远程服务器上;

(4)企业的备份什么时候会派上用场:

1)迁移或者升级数据库时;

2)增加从从库的时候;

3)人为的ddl,dml语句,主从库都没有办法了,因为所有的库都会还行,此时需要备份;

4)跨机房灾备,需要备份到异地;

(5)小结:

我们在生产工作中一般常用一主多从数据库架构,常见的备份方案是在某一个不对外服务的从库上

开启binlog,然后实施定时全备和实时增量备份,保存的周期大于备份的周期;

2、增量恢复:

利用二进制日志和全备进行的恢复过程,被称为增量恢复:

(1)主库或者从库宕机(硬件损坏)是否需要增量恢复:

不需要增量恢复;

主库宕机,只需要把其中一个同步最快的从库切换为主库即可;

从库宕机,直接不用就好了;

(2)人为操作数据库sql语句破坏主库是否需要增量恢复:

需要增量恢复;

在数据库主库内部命令行误操作,会导致所有的数据库(包括主从库)数据的丢失。

列如:在主库执行了‘drop database test;‘这样的删除语句,这时所有的从库也

会执行这哥‘drop database test;‘语句,从而导致所有数据库上的test库数据丢失。

(3)只有一个主库是否需要进行增量恢复:

如果公司只有一个主库的情况,首先应该做定一天一次的全量备份及时时的增量

备份。

(4)小结:

1)一般由人为或程序逻辑的方式在数据库执行的sql语句等误操作,才需要增量恢复,因为

此时所有的从库也执行了误操作语句;

2)增量恢复的条件是:存在一份全备加上全备之后的时刻到出现问题的所有增量binlog文件备份;

3)恢复时建议对外停止更新;

4)恢复全量备份,然后把增量日志中有问题的sql语句删除,恢复到数据库;

5)增量恢复的核心思想:

流程制度控制,如果不做,就会面临数据和服务出现故障;

业务需求容忍度,可量化的目标,根据需求选择停库或锁表或者容忍丢失部分数据;

3、备份注意:

备份保存的周期要大于备份的周期;

原文地址:https://www.cnblogs.com/LiuChang-blog/p/12315808.html

时间: 2024-08-08 01:35:43

9.11、mysql增量备份和增量恢复介绍的相关文章

MySQL第五天(增量备份和增量恢复)

day05一.数据备份与恢复-增量备份和增量恢复a.binlog日志介绍(二进制文件):使用Mysql数据库服务日志文件类型的一种.记录除查询之外的sql命令.默认没启用 查询的sql包括:select desc show 不是查询的命令:insert update delete create drop grant revoke b.启用binlog日志如何启用日志默认存放位置/var/lib/mysql日志默认名称主机名-bin.00000151-bin.000001 (大于500M自动生成0

mysql增量备份及断点恢复

简介增量备份是指在一次全备份或上一次增量备份后,以后每次的备份只需备份与前一次相比增加或者被修改的文件.这就意味着,第一次增量备份的对象是进行全备后所产生的增加和修改的文件:第二次增量备份的对象是进行第一次增量备份后所产生的增加和修改的文件,如此类推.目的解决完全备份中时间长.恢复慢的问题,采取了增量备份特点优:无重复数据,备份量不大,时间短缺:需要上次完全备份及完全备份后的增量备份才能恢复,需对增量备份逐个反复恢复,操作繁琐实现方式通过mysql的二进制日志间接实现增量备份:二进制日志保存了所

Mysql 一次性备份导出/导入恢复所有数据库

Mysql 一次性备份导出/导入恢复所有数据库 有木有遇到过这种情况?电脑或者服务器需要重装系统?可是你电脑上存着n多个网站的数据库,怎么办?把数据库文件夹拷贝出来,重装系统之后再拷回去?如果你使用了InnoDB引擎,恐怕那样做会出麻烦的,一个一个往外导数据库?天哪,那要搞到何年何月啊?今天合肥网站制作向阳互联就来介绍一下如何一口气导出全部数据库,再把数据库恢复回来,其实利用mysqldump的-all-databases参数可以一口气把你数据库root用户下的所有数据库一口气导出到一个sql文

MySQL完全备份、增量备份与恢复[转]

原文链接:http://www.360doc.com/content/11/1209/09/834950_170836197.shtml 场景:每周日执行一次完全备份,每天下午1点执行增量备份 [ 适用版本 ] MySQL 4.x – 6.x [ 配置 ] 执行增量备份的前提条件是MySQL打开log-bin日志开关,例如在my.ini或my.cnf中 加入 log-bin=/opt/Data/mysql-bin "log-bin="后的字符串为日志记载目录,一般建议放在不同于mysq

xtrabackup安装及全备,增量备份,及恢复

xtrabackup特性: 1.支持热备份 2.支持对InnoDB.MyISAM,xtradb存储引擎的备份 3.备份过程快速.可靠 4.备份过程不会打断正在执行的事务 5.能够基于压缩等功能节约磁盘空间和流量 6.自动实现备份检验 7.还原速度快 (一)安装: 官网:https://www.percona.com/doc/percona-xtrabackup/LATEST/installation/yum_repo.html ubuntu: wget https://repo.percona.

Percona Xtrabackup备份mysql (完整备份与增量备份)

Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对InnoDB和XtraDB存储引擎的数据库非阻塞地备份(对于MyISAM 的备份同样需要加表锁).XtraBackup支持所有的Percona Server.MySQL.MariaDB和Drizzle. XtraBackup优势 : 1.无需停止数据库进行InnoDB热备 2.增量备份MySQL 3.流压缩到传输到其它服务器 4.能比较容易地创建主从同步 5.备份MySQL时不会增大服务器

MySQL完全备份、增量备份与恢复

在生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果.所以数据库需要备份.这里以新版mysql5.7为例. 一.数据库备份分类: 从物理与逻辑的角度,备份可分为物理备份和逻辑备份. (1)物理备份:对数据库操作系统的物理文件(如数据文件.日志文件等)的备份.又可以分为冷备份和热备份. 冷备份:关闭数据库时进行的备份操作 热备份:在数据库运行状态中进行备份操作,这种备份方法依赖于数据库的日志文件. (2)逻辑备份:对数据库逻辑组件(如表等数据库对象)的备份. 从数据库的备份策

xtrabackup 全备份,增量备份,恢复 mysql数据库

Xtrabackup使用指南 InnoDB数据备份工具 Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写,也就是不加锁),是商业备份工具InnoDB Hotbackup的一个很好的替代品 一.Xtrabackup介绍  A.Xtrabackup是什么 Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品. Xtrabackup有两个主要的工具

【转】mysql增量备份恢复实战企业案例

来源地址:http://seanlook.com/2014/12/05/mysql_incremental_backup_example/ 小量的数据库可以每天进行完整备份,因为这也用不了多少时间,但当数据库很大时,就不太可能每天进行一次完整备份了,这时候就可以使用增量备份.增量备份的原理就是使用了mysql的binlog日志. 本次操作的MySQL版本为5.5.40 for Linux (x86_64). 增量备份要确保打开了二进制日志,参考mysql的日志系统: 1 mysql> show