mysql增量备份断点恢复

生产环境中在mysql中误操作是非常正常的,所以就需要用到mysql的增量备份恢复。
增量备份是我们经常用到的,它可以指定某个误操作的时间以及位置点进行数据恢复,更加准确的恢复我们想要还原的数据。
以下实验为大家演示误操作使用增量备份进行数据的恢复。

1、配置文件中开启二进制日志,并重启mysql


2、创建测试数据库,写入内容

3、查看二进制日志,截断日志,完成完全备份

mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql_bin.000001      //查看二进制日志



mysqladmin -uroot -pabc123 flush-logs     //刷新截断,形成一个新日志
mysqldump -uroot -pabc123 school > /opt/school.sql   //完全备份school数据库

4、查看新生成的二进制文件

5、添加两条数据,再次查看新生成的二进制文件

mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000002   //再次查看新生成的二进制文件


6、模拟误操作、查看二进制文件中误操作的位置点时间点



7、删除list表,先进行完全备份恢复

source /opt/school.sql   //进行完全备份恢复

再次查看表,完全备份的数据已恢复

8、再次截断日志,然后进行增量备份恢复

mysqladmin -uroot -pabc123 flush-logs     再次截断日志
(此处截断日志,是为了恢复正确数据的时候不会被前面的操作覆盖)

恢复到误操作前时间点前的操作
mysqlbinlog --no-defaults --stop-datetime=‘2018-09-03 22:18:29‘ /usr/local/mysql/data/mysql_bin.000002 | mysql -uroot -pabc123    


恢复添加jerry的那部分数据
mysqlbinlog --no-defaults --start-datetime=‘2018-09-03 22:19:27‘ /usr/local/mysql/data/mysql_bin.000002 | mysql -uroot -pabc123

可以查看到五条数据都已被恢复

原文地址:http://blog.51cto.com/13760226/2170073

时间: 2024-11-09 17:03:59

mysql增量备份断点恢复的相关文章

mysql增量备份依次恢复库

#!/bin/bash#scripts sh recovery_increment.sh 时间 日期 例如: 14 20180228 bakfile=/data/dbbackuplogfile=/data/bak.log dbuser=xxxdbpasswd=xxxxip=ifconfig | grep "inet addr"| grep Bcast| awk '{print $2}'| awk -F":" '{print $2}' #增量还原 recoveryin

mysql增量备份及断点恢复

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

MySQL增量备份与还原详解

增量备份与恢复的特点 增量备份的优点是没有重复数据,备份量不大,时间短.但缺点也很明显,需要建立在上次完全备份及完全备份之后所有的增量才能恢复. MySQL没有提供直接的增量备份方法,但是可以通过mysql二进制日志间接实现增量备份.二进制日志对备份的意义如下: (1)二进制日志保存了所有更新或者可能更新数据库的操作. (2)二进制日志在启动MySQL服务器后开始记录,并在文件达到所设大小或者收到flush logs 命令后重新创建新的日志文件. (3)只需定时执行flush logs方法重新创

MYSQL增量备份(日志备份)

MYSQL数据库在使用过程中,一般都需要对使用的数据库进行备份处理,对于数据量较小时可以通过mysqldump命令进行数据库全备份,但是当数据库数据量达到一定程度之后,显然增量备份更加适合. MYSQL增量备份主要通过二进制日志文件进行增量备份.mysql数据库会以二进制形式自动把用户对mysql数据库的操作记录到文件,当用户希望恢复的时候可以使用备份文件进行恢复. 本文主要介绍如何实现在本地服务器上对远程服务器的数据库文件进行在本地服务器的备份.(以下的cmd均需跳转到mysql的bin文件夹

xtrabackup之Innobackupex增量备份及恢复

演示增量备份 #启动一个全备 innobackupex > --defaults-file=/mysql/mysqldata/3306/my.cnf > --host=127.0.0.1 > --user=xtrabk > --password='onlybackup' /mysql/mysqldata/backup/ ............ 160527 05:47:55 innobackupex: completed OK! [[email protected] mysqld

Xtrabackup 增量备份、恢复、原理

整合了网上的一些资料,结合自己的理解,并进行了实验验证 理解一: 1,Xtrabackup是什么 Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品. Xtrabackup有两个主要的工具:xtrabackup.innobackupex (1).xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表 (2). innobackupex是参考了In

Mysql完全备份和恢复

Mysql完全备份和恢复 实验介绍 数据库备份从物理与逻辑的角度划分可以分为:物理备份.逻辑备份.从数据库的备份策略角度,可以分为完全备份.差异备份.增量备份.这次实验主要介绍完全备份,完全备份优点是备份与恢复操作简单方便,缺点是数据存在大量的重复,占用大量的备份空间,备份时间长. Mysql完全备份 1.使用tar打包文件夹备份 Mysql的数据库文件默认都是保存在安装目录下的data文件夹下面,可以直接保存data文件夹.但是占用的空间很大,可以使用tar打包压缩进行保存.由于数据库文件很大

MySQL数据库备份和恢复

目录 MySQL数据库备份和恢复 备份恢复概述 为什么要备份 备份注意要点 还原要点 备份类型: 备份时需要考虑的因素 备份什么 备份工具 冷备份 cp tar mysqldump备份工具 模拟数据库崩溃,最大限度还原数据 mysqldump的分库备份 mysqldump的MyISAM存储引擎相关的备份选项: mysqldump的InnoDB存储引擎相关的备份选项: 生产环境实战备份策略 将误删除了的某个表进行还原 MySQL数据库备份和恢复 备份恢复概述 为什么要备份 灾难恢复:硬件故障.软件

【mysql】使用xtrabackup在线增量备份及恢复l数据库

一.介绍 1.Xtrabackup有这么几个文件 innobackupex innobackupex 是xtrabackup的一个符号链接 . innobackupex still supports all features and syntax as 2.2 version did, but is now deprecated and will be removed in next major release. xtrabackup 一个由C编译而来的二进制文件,可以整备MySQL datab