MySQL的备份和恢复-基于LVM快照的备份(lvm-snapshot)

                                            作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.什么是快照卷

  如上图所示,原卷和快照卷可以不一样大,因为快照卷只保存变化中的数据,但是你得提前预估快照卷的存储空间有多大,一旦快照卷存储空间溢出就意味着快照卷的崩溃!快照卷拥有以下特点:
    1>.逻辑卷快照,事实上它本身是一个逻辑卷,但是它仅仅是作为原卷的另外一个访问路径;
    2>.刚刚创建快照卷时,快照卷中是没有任何数据的,所有数据都执行了原卷的数据块,所以此时访问的所有数据都来自于原卷;
    3>.一旦原卷中的数据需要修改,某一数据在修改之前需要把源数据复制到快照卷里进行修改,在快照卷里面存储修改后的内容,这意味着再次之后访问所有的数据一部分来自原卷,一部分来自快照卷。
  总是所述,快照卷是备份吗?答案是否定的,快照卷只是给我们提供了一个能够获得时间一致性的访问通路。所以我们通过快照卷做备份我们得到的时间戳是一致的。
二.基于LVM快照的备份注意事项
1.事务日志跟数据文件必须在同一个卷上;
2.创建快照卷之前,要请求mysql的全局锁,在快照创建完成之后释放锁;
3.在请求全局锁完成之后,做一次日志滚动;做二进制日志文件及位置标记(手动进行);
三.备份步骤步骤
1.请求全局锁,并滚动日志
  flush tables with read lock
  flush logs
2.做二进制日志文件及位置标记(手动进行)
  #mysql -pyinzhengjie -e ‘show master status ’ > /path/to/somefile
3.创建快照卷
  #lvcreate -L -s -n yinzhengjie-mysql-snmap -p r /path/to/some_lv
4.释放全局锁
  #unlock tables
5.挂载快照并备份
  #cp
6.备份完成之后,删除快照卷
  #lvremove
  当然你可以用 mylvbackup:perl脚本,快速基于LVM备份mysql。需要你提前配置好perl环境。
 
四.恢复时的方式
1.二进制日志保存好
  提取备份之后的所有时间至某sql脚本中
2.还原数据,修改权限及属主属组等,并启动mysql
3.做即时点还原
 
 
 
 
 
 
 
 
 
 
 
 
 

MySQL的备份和恢复-基于LVM快照的备份(lvm-snapshot)的更多相关文章

  1. mysql数据库基于LVM快照的备份

    lvm-snapshot: 基于LVM快照的备份 1.事务日志跟数据文件必须在同一个卷上          2.创建快照卷之前,要请求mysql的全局锁,在快照创建完成之后释放锁          3 ...

  2. MySQL数据库备份还原(基于binlog的增量备份)

    MySQL数据库备份还原(基于binlog的增量备份) 一.简介 1.增量备份      增量备份 是指在一次全备份或上一次增量备份后,以后每次的备份只需备份与前一次相比增加或者被修改的文件.这就意味 ...

  3. MySQL基于LVM快照的备份恢复(临时)

    目录1.数据库全备份2.准备LVM卷3.数据恢复到LVM卷4.基于LVM快照备份数据5.数据灾难恢复6.总结 写在前面:测试环境中已安装有mysql 5.5.36数据库,但数据目录没有存放在LVM卷, ...

  4. mysql 基于lvm快照的备份

    1.查看磁盘数 ls /dev/ | grep sd 2.快照备份 pvcreate /dev/sdb #制作成物理卷vgcreate testvg /dev/sdblvcreate -L200M - ...

  5. Mysql数据库备份—-通过LVM快照实现备份还原

    一.实验环境 一台测试机:A(172.18.30.1) 操作系统:Centos7 操作对象数据库版本:mariadb-10.2 二.实现目的 从A机器(172.18.30.1)简单搭建数据库,创建测试 ...

  6. MySQL基于mysqldump及lvmsnapshot备份恢复

    一.备份对象 数据 配置文件 代码:存储过程,存储函数,触发器 跟复制相关的配置 二进制日志文件 二.备份工具 mysqldump:逻辑备份工具 InnoDB热备.MyISAM温备.Aria温备 备份 ...

  7. MySQL数据物理备份之lvm快照

    使用lvm快照实现物理备份 优点: 几乎是热备(创建快照前把表上锁,创建完后立即释放) 支持所有存储引擎 备份速度快 无需使用昂贵的商业软件(它是操作系统级别的) 缺点: 可能需要跨部门协调(使用操作 ...

  8. lvm快照备份mysql

    快照备份原理(从其他博客看的): 原理:通过lvm快照给lvm真身拍个照片,当lvm真身发送改变时,lvm快照把lvm真身改变之前的内容存放在快照上,这样在lvm快照有效的这段时间内,我们看到的lvm ...

  9. 使用LVM快照进行数据库备份

    使用mysqldump备份时,如果存储引擎为MyISAM,则只能实现温备份,并需使用选项--lock-all-tables锁定所有表.如果存储引擎为InnoDB,则加上--single-transac ...

随机推荐

  1. StringUtils类方法归纳

    StringUtils方法概览 IsEmpty/IsBlank - checks if a String contains text IsEmpty/IsBlank – 检查字符串是否有内容. Tri ...

  2. Redux系列01:从一个简单例子了解action、store、reducer

    其实,redux的核心概念就是store.action.reducer,从调用关系来看如下所示 store.dispatch(action) --> reducer(state, action) ...

  3. linux systemctl 命令

    目录 预热 管理单个 unit 查看系统上的 unit 管理不同的操作环境(target unit) 检查 unit 之间的依赖性 相关的目录和文件 systemctl daemon-reload 子 ...

  4. Git版本库的创建(Ubuntu)

    在Ubuntu上学习Git随笔. 一. git 仓库的安装 git 在终端用git命令查看Ubuntu是否安装git版本库,如果没有安装,最新版本(Ubuntu18.04)会提示用下面命令进行安装. ...

  5. jmeter的开启

    先申明我以jmeter的3.2版本来描述本文内容,通常不要选择太新的版本,因为新版本容易出现不稳定和不兼容因素.启动jmeter的前提是JDK已经安装和配置,具体的JDK已经安装和配置自行查资料,此处 ...

  6. 唐雎(jū)不辱使命

    唐雎(jū)不辱使命 ​选自<战国策> 秦王使人谓安陵君曰:“寡人欲以五百里之地易安陵,安陵君其许寡人.”安陵君曰:“大王加惠,以大易小,甚善.虽然,受地于先生,愿终守之,弗敢易.”秦王不 ...

  7. ThinkPHP框架知识(比较全的知识)

    php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...

  8. Beta吐槽

    目录 感想 管理团队 推进项目 pm吐槽 开发 经过我慎重的考虑,我jio得,Beta版本的吐槽还是不能少. 感想 管理团队 这学期十分庆幸成为我们这个这么优秀的团队的pm.身在pm的位置上经历这么一 ...

  9. 弟三周作业之VS2015

    这周有个任务就是安装VS2015,然后进行简单的单元测试. 首先我上吴小勇同学给的MSDN官网(http://www.itellyou.cn/)下载VS2013, 然后装上后,在工具栏里,点击工具里的 ...

  10. 1-Python3从入门到实战—基础之语法

    Python从入门到实战系列--目录 编码格式 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串 # -*- coding=utf-8 -*- 也可以 ...