基于LVM卷的MYSQL快照恢复
在mysql数据库环境中,如果数据库数据很重要,可以使用LVM卷管理的方式,通过对数据卷进行快照,得到快速备份的目的,
首先回顾一下LVM卷管理的几个概念:
- 物理磁盘PD,physical disk,也就是为系统添加的一块一块物理硬盘,没有分区没有进行格式化的,在系统中呈现的形态是/dev/vdb,/dev/sda等等
- 物理分区PP,physical partition,在物理磁盘上进行的分区,Linux系统中最多有4个主分区,一般建议是3个主分区加1个扩展分区,这里的PP也就是主分区,通过对PD进行fdisk分区,然后得到。在系统中呈现的形态是/dev/sda1,/dev/sda2等
- 物理卷PV,physical volume,这是组成LVM的基本组成单元,通过对物理分区PP进行转换,转换为PV,一个PP对应一个PV,转换前后,在系统中呈现的状态不变
- 物理卷组,VG,volume group,由多个PV组成的逻辑卷组,通过将多个PV,使用命令,合成一个VG,容量是这么多PV的和,在系统中呈现的状态是/dev/vg***,命名和自己设置有关
- 逻辑卷,LV,logical volume,在VG上创建的,可能是跨多个PV的逻辑空间
- 通过的逻辑卷进行格式化,创建文件系统fs,然后挂在给系统使用。

下面就是基于这种情况,做一下LVM卷划分。
- 假设现在给服务器添加了一块物理磁盘,大小为10G,第一步是要基于物理磁盘划分分区,fdisk /dev/sdd,划分3个大小1G的PP,在系统中分别为/dev/sdd1,/dev/sdd2,/dev/sdd3
- 基于3个PP制作PV,pvcreate /dev/sdd{1,2,3},得到三个PV
- 基于3个PV,制作VG,vgcreate /dev/mysqlvg /dev/sdd{1,2,3}
- 在VG上划分LV,lvcreate -L 1G -n mysqldata /dev/mysqlvg,划分的LV,大小为1G,名称为mysqldata
- 制作文件系统,mkfs.ext4 /dev/mysqlvg/mysqldata
- 将mysql数据tar打包出来,放在其他目录下,然后将LV挂在到对应目录中,mount /dev/mysqlvg/mysqldata /var/lib/mysql,然后将tar包解压到当前目录
- 修改目录属性,chown -r mysql.mysql /var/lib/mysql,删除lost+found目录
当将数据存放在LVM卷上之后,可以通过LVM卷的快照功能,对数据卷进行快照,然后对快照内容进行备份,从而达到对mysql数据库的备份操作。创建快照的步骤如下:
- 对数据库进行读锁锁定,flush tables with read lock;
- 然后开始快照卷,lvcreate -s -L 1G -n snaplv /dev/mysqlvg/mysqldata,对/dev/mysqlvg/mysqldata进行快照操作,-s就是快照,-L是大小,-n是命名
- 快照卷创建成功后,就可以unlock tables,然后将快照卷挂载到其他目录下,这个快照卷,就是对某一个时刻点,mysql数据库的全量备份。
基于LVM卷的MYSQL快照恢复的更多相关文章
- MySQL基于LVM快照的备份恢复(临时)
目录1.数据库全备份2.准备LVM卷3.数据恢复到LVM卷4.基于LVM快照备份数据5.数据灾难恢复6.总结 写在前面:测试环境中已安装有mysql 5.5.36数据库,但数据目录没有存放在LVM卷, ...
- MySQL的备份和恢复-基于LVM快照的备份(lvm-snapshot)
MySQL的备份和恢复-基于LVM快照的备份(lvm-snapshot) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是快照卷 如上图所示,原卷和快照卷可以不一样大,因为 ...
- mysql数据库基于LVM快照的备份
lvm-snapshot: 基于LVM快照的备份 1.事务日志跟数据文件必须在同一个卷上 2.创建快照卷之前,要请求mysql的全局锁,在快照创建完成之后释放锁 3 ...
- openstack基于卷快照恢复卷
openstack基于卷快照恢复卷 基于P版本,对卷基于快照进行恢复的源码分析 1.特性描述 在pike版本中,openstack官网增加了一个新特性,Cinder volume revert to ...
- 基于LVM(逻辑卷管理)的快照原理
一.为甚么不管多大的逻辑卷进行备份,快照都会在几秒之内完成? 快照在拍摄的一瞬间,系统会记录那个时间点逻辑卷的状态.数据等,此时拍下的快照相当于一张白纸.如图所示 快照做好后,随着时间的推移,源卷里的 ...
- 基于Redo Log和Undo Log的MySQL崩溃恢复流程
在之前的文章「简单了解InnoDB底层原理」聊了一下MySQL的Buffer Pool.这里再简单提一嘴,Buffer Pool是MySQL内存结构中十分核心的一个组成,你可以先把它想象成一个黑盒子. ...
- LVM卷管理
一.LVM是做什么的 LVM ( Logical Volume Manager ,逻辑卷管理器)LVM 是建立在磁盘和分区之上的一个逻辑层,用来提高磁盘分区管理的灵活性.LVM 可以对磁盘分区按照组的 ...
- 烂泥:【解决】修改LVM卷组名重启系统后,无法进入进入系统
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 一台服务器系统已经安装完毕,但是LVM的卷组vg使用的是默认的VolGroup名称,使用起来感觉不舒服,打算把这个卷组名称修改为vg. 先来查看系统中有 ...
- Linux LVM卷组管理
Linux LVM卷组管理 由于传统的磁盘管理不能对磁盘进行磁盘管理,因此诞生了LVM技术,LVM技术最大的特点就是对磁盘进行动态管理. 由于LVM的逻辑卷的大小更改可以进行动态调整,且不会出现丢失数 ...
随机推荐
- How to mount EFI on macOS
mount -t msdos /dev/disk0s1 /volumes/efi
- Previous Workflow Versions in Nintex Workflow
Previous Workflow Versions in Nintex Workflow September 4, 2013 It occurred to me that even though I ...
- 简单介绍一下在CentOS上安装Docker。
简单介绍一下在CentOS上安装Docker. 前置条件: 64-bit 系统 kernel 3.10+ 1.检查内核版本,返回的值大于3.10即可. $ uname -r 2.使用 sudo 或 r ...
- js获取参数 解决乱码
获取参数 function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^& ...
- 弹出层-layui
type 0(信息框,默认)1(页面层)2(iframe层)3(加载层)4(tips层) 弹出层 //winIndex存储弹出层的index,以便关闭弹出层时使用 function openWindo ...
- BZOJ5296 [CQOI2018] 破解D-H协议 【数学】【BSGS】
题目分析: 裸题. 代码: #include<bits/stdc++.h> using namespace std; typedef long long ll; ; #define mp ...
- Python 面试题_未完
基础部分 1. 为什么学习Python 家里有在这个IT圈子里面,也想让我接触这个圈子,然后给我建议学的Python, 然后自己通过百度和向有学过Python的同学了解了Python,Python这门 ...
- 爬虫_古诗文网(队列,多线程,锁,正则,xpath)
import requests from queue import Queue import threading from lxml import etree import re import c ...
- 【 HDU 1538 】A Puzzle for Pirates (海盗博弈论)
BUPT2017 wintertraining(15) #5D HDU 1538 偷懒直接放个果壳的链接了,感觉比网上直接找这题的题解要更正确.易懂. 海盗博弈论 代码 #include <cs ...
- 脚本自动封掉并发数过高的 IP
防止扫描器对服务器恶意扫描,可以对 iptables 规则做了比较严格的配置. 以下配置可作为参考: #lo -A INPUT -i lo -j ACCEPT -A OUTPUT -o lo -j A ...