1.查看磁盘数

ls /dev/ | grep sd

2.快照备份

pvcreate /dev/sdb #制作成物理卷
vgcreate testvg /dev/sdb
lvcreate -L200M -n testlv testvg #创建逻辑卷
mkfs -t ext4 /dev/testvg/testlv #格式化lv
mount /dev/testvg/testlv /mnt #挂载目录

mount -t  ext3  /dev/myvg1/mylv1  /mnt/mylv1    #挂载lvm

--------------迁移数据库-----------
mv * /mnt/

umount /mnt #卸载mnt
mount /dev/testvg/testlv /var/lib/mysql/

lvcreate -L50m -s -n snap1 /dev/testvg/testlv #指定快照大小

vgdisplay #查看创建的vg
lvdisplay #查看lv
du -h /var/lib/mysql #查看数据库的大小
tail /var/log/mysql.log #查看日志报错
mount

---------------------------自动挂载逻辑卷-----------------------

blkid /dev/myvg1/mylv1 | awk '{print $2}'   #获取逻辑卷的卷名

并在/etc/fstab中添加开启自动挂载

  1. # cat >>/etc/fstab <<endf  \\在/etc/fstab下追加逻辑卷挂载信息
  2. > UUID=29502f33-fde2-4c21-b6c3-9fe1b74c0f0d /var/lib/mysql ext4 defaults 0 0
  3. > endf

 ---------------------开始---------------------------------------

一、前期准备工作

1.划分物理分区 

  (1)查看当前分区:fdisk -l

  

(2)fdisk分区:fdisk   /dev/sda 

将新分区的id设置为8e

(3)创建完分区让分区马上生效:partprobe

出现此情况的解决办法

reboot

2.创建LVM的物理卷

   (1)pvcreate /dev/sda3

          查看pv命令 pvdisplay 

3.创建卷组

  #vgcreate    卷组名      物理卷
  #vgcreate  myvg1  /dev/sda3
 

4.创建逻辑卷

#lvcreate  -L  大小  卷组名  -n  逻辑卷名称

lvcreate -L 500M myvg1 -n mylv1

5.格式化挂载逻辑卷:mkfs.ext4 /dev/myvg1/mylv1

mkdir -p /mnt/mylv1/data

mount -t ext4  /dev/myvg1/mylv1  /mnt/mylv1   #挂载逻辑卷

mount     #查看这个逻辑卷挂载在那里

二、mysql数据库lvm备份

首先关闭mysql

1.创建数据库目录及权限设置

   mkdir /mnt/mylv1/mysqldata

   chown -R mysql:mysql /mnt/mylv1/mysqldata

2.修改my.cnf文件 

[mysqld]

datadir=/mnt/mylv1/mysqldata
socket=/mnt/mylv1/mysqldata/mysql.sock
lower_case_table_names = 1

[client]

socket=/mnt/mylv1/mysqldata/mysql.sock
default-character-set=utf8

[safe_mysqld]
err-log = /var/log/mysql.log

3.初始化数据库

   mysql_install_db --user=mysql --datadir=/mnt/mylv1/mysqldata

   or

   mv  *  /mnt/mylv1/mysqldata

4.备份数据库

(1)准备数据库目录

 mkdir -pv /usr/mysql_backup/`date +%F`/{data,binlog}

(2)修改变量,请求全表读锁

mysql> SET GLOBAL sync_binlog=1; #设置此变量为1,让每个事件尽可能同步到二进制日志文件里,以消耗IO来尽可能确保数据一致性 
      mysql> SHOW MASTER STATUS; #查看二进制日志和position,此信息保存在/backup/2015-04-14/binlog的binlog.txt里

mysql> FLUSH LOGS; #刷新日志 
     mysql> FLUSH TABLES WITH READ LOCK; #读锁请求到后不要关闭此mysql交互界面

(3)创建快照

lvcreate -L50m -s -n snap1 /dev/myvg1/mylv1

(4)回到锁定表的mysql交互式界面,解锁:
      mysql> UNLOCK TABLES; 
      mysql> SET GLOBAL sync_binlog=0;  #此参数可以根据服务器磁盘IO的负载来调整

(5)挂载快照卷并备份数据

mount /dev/myvg1/snap1 /usr/mysql_backup/2015-09-30/data

(6)释放快照卷

umount /usr/mysql_backup/2015-09-30/data

lvremove /dev/myvg1/snap1

----------------------错误处理----------------------------------

1. The server quit without updating PID file 错误

首先配置

[mysqld]
socket=/mnt/mylv1/data/mysql.sock
datadir=/mnt/mylv1/data
user=mysql
symbolic-links=0
[safe_mysqld]
err-log = /var/log/mysql.log

[client]
default-character-set=utf8

/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled  重启电脑

2.Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

mysql -uroot -p -S /mnt/mylv1/data/mysql.sock  #通过此方式登录可以临时解决

mysql -uroot -h 127.0.0.1 -p    #通过此方式登录可以临时解决

----------------彻底解决------------------

socket=/var/lib/mysql/mysql.sock

/usr/bin/mysqld_safe &

mysql 基于lvm快照的备份的更多相关文章

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

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

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

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

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

    MySQL的备份和恢复-基于LVM快照的备份(lvm-snapshot) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是快照卷 如上图所示,原卷和快照卷可以不一样大,因为 ...

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

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

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

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

  6. LVM快照(snapshot)备份

    转载自:http://wenku.baidu.com/link?url=cbioiMKsfrxlzrJmoUMaztbrTelkE0FQ8F9qUHX7sa9va-BkkL4amvzCCAKg2hBv ...

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

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

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

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

  9. 基于LVM卷的MYSQL快照恢复

    在mysql数据库环境中,如果数据库数据很重要,可以使用LVM卷管理的方式,通过对数据卷进行快照,得到快速备份的目的, 首先回顾一下LVM卷管理的几个概念: 物理磁盘PD,physical disk, ...

随机推荐

  1. Java-HashSet

    HashSet 的实现 public class HashSet<E> extends AbstractSet<E> implements Set<E>, Clon ...

  2. 【HDU 4602】Partition

    题意 给你一个数n,把它写成几个正整数相加的形式,即把n拆开成若干段,把所有可能的式子里正整数 k 出现的次数取模是多少. 分析 特判 k>=n 的情况. k<n时:问题相当于n个点排一行 ...

  3. Oracle自定义函数1

    用户定义函数是存储在数据库中的代码块,可以把值返回到调用程序.调用时如同系统函数一样,如max(value)函数,其中,value被称为参数.函数参数有3种类型. IN 参数类型:表示输入给函数的参数 ...

  4. 37.Activity之间的转换以及数据的传递(Intent)学习

      Intent简介:                                                                                在一个Androi ...

  5. Escape Sequences

    (这篇随笔是 C++ Primer 5th ed. pp.39-40的摘录) Some characters, such as backspace or control characters, hav ...

  6. 由chrome剪贴板问题研究到了js模拟鼠标键盘事件

    写在前面 最近公司在搞浏览器兼容的事情,所有浏览器兼容的问题不得不一个人包了.下面来说一下今天遇到的一个问题吧 大家都知道IE下面如果要获得剪贴板里面的信息的话,代码应该如下所示 window.cli ...

  7. iOS应用支持IPV6

    一.IPV6-Only支持是啥? 首先IPV6,是对IPV4地址空间的扩充.目前当我们用iOS设备连接上Wifi.4G.3G等网络时,设备被分配的地址均是IPV4地址,但是随着运营商和企业逐渐部署IP ...

  8. c# 闭包 小例

    class Program { static void fnnn() { string[] k = new string[] { "x", "y", " ...

  9. js中对象概念的声明

  10. spring事务学习(转账案例)(二)

    四.通过springAop进行事务管理 继续从第一个无事务操作的项目中进行更改. 只修改applicationContext.xml配置文件,注意设置transaction引用 <?xml ve ...