文档章节

使用LVM快照备份Mysql 

藏劍丶
 藏劍丶
发布于 2016/06/27 15:09
字数 452
阅读 42
收藏 0

LVM快照写时复制的特性(copy-on-write,COW)
    写时复制快照在快照时间点之后,没有物理数据复制发生,仅仅复制了原始数据物理位置的元数据。因此,快照创建非常快,可以瞬间完成。然后,快照副本跟踪原始卷的数据变化(即原始卷写操作),一旦原始卷数据块发生写操作,则先将原始卷数据块读出并写入快照卷,然后用新数据块覆盖原始卷。这样我们访问快照卷上的数据仍旧是写操作前的,可以保证我们备份数据的一致性。
    原理图:


设计一个实验,使用LVM快照备份数据,然后删除Mysql所有数据文件,最后使用快照恢复数据库。
1.创建LVM快照
2.删除Mysql所有的数据文件
3.停止Mysql数据库实例
4.数据还原
5.数据恢复

1.创建LVM快照
    给vg_lihuilin_-lv_root逻辑卷创建一个名为mysql-snap的快照。其中vg_lihuilin_-lv_root挂载为"/"。
    

2.删除Mysql所有数据文件,模拟一个事故
    
    可以看到Mysql的数据文件已经全部删除,但是快照中的文件还在。可以恢复数据库到快照创建的时间点(point-in-time)。
3.停止Mysql数据库实例
    因为数据库的数据文件已经被删除,所以先停止数据库实例。

4.数据还原
    将快照中的文件恢复到Mysql的数据目录。

5.数据恢复
    重新启动Mysql实例,innodb引擎会进行实例恢复。


每次备份之后,应该删除快照,减少IO操作。

参考:
http://blog.csdn.net/dba_waterbin/article/details/12720441
http://asram.blog.51cto.com/1442164/313073
http://vbird.dic.ksu.edu.tw/linux_basic/0420quota.php#lvm_snapshot

本文转载自:http://blog.itpub.net/29254281/viewspace-1077128/

上一篇: InnoDB双写缓冲
下一篇: mysqldump
藏劍丶
粉丝 1
博文 68
码字总数 15764
作品 0
朝阳
程序员
私信 提问
初接触Linux,LVM的备份

今天给大家来的得失LVM相关的备份 一、LVM快照写时复制的特性(copy-on-write,COW) 写时复制快照在快照时间点之后,没有物理数据复制发生,仅仅复制了原始数据物理位置的元数据。因此,快照...

王丶Blue
2014/05/03
0
0
基于LVM的数据库备份和恢复

一、LVM快照写时复制的特性(copy-on-write,COW) 写时复制快照在快照时间点之后,没有物理数据复制发生,仅仅复制了原始数据物理位置的元数据。因此,快照创建非常快,可以瞬间完成。然后,...

余二五
2017/11/07
0
0
基于文件系统逻辑卷LVM快照备份

LVM快照备份原理图 2.1 LVM: 几乎热备、物理备份,加读锁,直接备份原卷,那么你就得等备份操作完成后才能解锁. 2.2而LVM快照就是备份完成就可以解锁,速度极快,这就是为什么是几乎热备的原...

aha45
2014/05/23
0
0
Mysql 数据库备份与恢复

今天有点时间,自己总结下mysql备份的几种方法以备查阅! 生产环境中数据无疑是一个公司的命脉,作为一个运维工程师无法保证企业数据的安全,那么是一个不合格的工程师。我们如何保证数据不丢...

飞来的翅膀
2017/06/15
0
0
Mysql增量备份之Mysqldump & Mylvmbackup

http://lizhenliang.blog.51cto.com/7876557/1302732 简单介绍 Mysqldump增量备份 使用Mysqldump备份工具实现完全备份,并结合二进制日志实现增量备份。 特点:逻辑备份工具、支持InnoDB热备...

逆袭之IT
2017/05/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
5分钟前
0
0
Django的ChoiceField和MultipleChoiceField错误提示,选择一个有效的选项

在表单验证时提示错误:选择一个有效的选项 例如有这样一个表单: class ProductForm(Form): category = fields.MultipleChoiceField( widget=widgets.SelectMultiple(), ...

编程老陆
23分钟前
1
0
Vue核心概念及特性 (一)

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。 > 特点: 易用,灵活,高效,渐进式框架。 > 可以随意组合需要用到的模块 vue + components + vue-router + vuex + v...

前端优选
26分钟前
1
0
Kylin 精确去重在用户行为分析中的妙用

作者:史少锋,Apache Kylin committer & PMC,2019/10/11 在上次文章《如何在 1 秒内做到大数据精准去重》中,我们介绍了 Apache Kylin 为什么要支持大数据集上的精确去重,以及基于 Bitmap...

ApacheKylin
今天
6
0
学习记录(二) es6基本语法(rest参数,模板化,axios模块,拦截器)

日常学习记录 模块化:把一个大文件分成多个小文件,按照一定规范进行拼接 es5写法: 导出:module.exports = 数据 导入:require("路径") /路径未添加后缀名时 //默认添加.js //把路径作为文件名...

Pole丶逐
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部