关闭mysql服务

# service mysqld stop

一、创建逻辑卷

依照如下连接的文档创建一个逻辑卷
http://www.178-go.com/archives/43
要求:物理卷20G;卷组名为vg0;逻辑卷2G,逻辑卷名为mydata
创建逻辑卷挂载点,并挂载之
# mkdir /mydata
# mount /dev/vgo/mydata /mydata

二、安装MySQL数据库

如果机器已装有mysql,则此步可省略
只需修改mysql的配置文件中的datadir的值改为/mysata
然后将原数据库的数据文件全部copy至/mydata文件下,即转移数据库所在位置
修改/mydata目录及其内容的属主属组
然后重启mydql服务 
如果需要重新安装,可依如下文档进行安装:
http://www.178-go.com/archives/76
同样安装完成后,只需将mysql配置文件中的datadir的值改为/mydata
操作如下:
# sed -i 's/ ^datadir.*$/datadir=\/mydata/g' /etc/my.cnf
# service mysqld restart
修改/mydata目录及其内容的属主属组
# chown -R mysql:mysql /mydata/*
# chown mydql:mysql /mydql
启动mysql服务
# service mysqld start

三、创建快照

锁定所有表先
# mydql
>FLUSH TABLES WITH READ LOCK;
>\q
创建快照
# pvvreat -L 20M -s -n mysnap /dev/vgo/mydata
注:此命令详细解释可参照如下文档:
http://www.178-go.com/archives/40
解锁表
# mysql
>UNLOCK TABLES;
>\q
创建快照挂载点,并挂载之 
# mkdir /mysnap
# mount /dev/vgo/mysnap
# ls
发现此时/mysnap目录下的文件和/mydata下的文件一模一样
此时,在原卷上做任何修改都不会影响/mysnap中的文件

四、测试

对数据库进行一些修改
# mysql
>CREATE DATABASE mydb;
>USE mydb;
>CREATE TABLE sanptest (
>name char(30),
>id   int);
>\q
现在从快照目录下复制mydb文件到其它目录下,进行物理备份
注:生产应用中应该备份整个数据库
# cd /mysanp
# cp -rp mydb  /tmp/
卸载快照卷
# umount /mysnap
# lvremove /dev/vgo/mysnap
下面对数据库进行一些删除操作
# mydql
>FLUSH LOGS;
>DROP DATABASE mydb;
>\q
此时,/mydata目录下已没有mydb文件
现在将刚才物理备份的的mydb文件复制回来
# copy -rp /tmp/mydb /mydata
# service mysqld restart
查看数据库
# mysql
>SHOW DATABASES;
发现和做修改之前的的数据库一模一样,没有刚创建的mydb库
也就是说快照备份只保存做快照那一时刻的数据信息
此时,若想找回快照之后失去的数据,刚需要用的二进制日志
查看二进制日志
# mysql
>SHOW BINLOG EVENTS IN'mysql-bin.0000X';
这里X表示数据,数字不同,日志内容也不一样,数字越大越接近现在
这些日志全放在/mydata文件下
显示大致如下:

如我们想从二进制日志文件mysql-bin.0000013中恢复一个insert操作,就可以用如下命令:
# mysqlbinlog --start-position 106 --end-position 220 mysql-bin.0000013 > /tmp/a.mysql
# mysql -uroot -p < /tmp/a.sql
显示结果如下:

转载于:https://blog.51cto.com/caogenyingxiong/524211

快照方式备份mysql 数据库相关推荐

  1. mysql 数据库快照迁移_快照方式备份mysql 数据库

    关闭mysql服务 # service mysqld stop 一.创建逻辑卷 依照如下连接的文档创建一个逻辑卷 要求:物理卷20G;卷组名为vg0;逻辑卷2G,逻辑卷名为mydata 创建逻辑卷挂载 ...

  2. 学会用各种方式备份MySQL数据库

    目录 前言 为什么需要备份数据? 数据的备份类型 MySQL备份数据的方式 备份需要考虑的问题 设计合适的备份策略 实战演练 使用cp进行备份 使用mysqldump+复制BINARY LOG备份 使 ...

  3. mysql 高效备份_Mysql高性能备份方案解决数据不间断访问(LVM快照方式备份)

    Mysql高性能备份方案解决数据不间断访问(LVM快照方式备份) mysql LVM快照备份特点: 1.在大多数情况下,这种方式几乎算得上是热备.它无需关闭服务,只需要设置只读或者类似这样的限制. 2 ...

  4. commvault备份mysql,备份MySQL数据库的4种方式

    备份MySQL数据库的4种方式 前言我们试着想一想, 在生产环境中什么最重要?如果我们服务器的硬件坏了可以维修或者换新, 软件问题可以修复或重新安装, 但是如果数据没了呢?这可能是最恐怖的事情了吧, ...

  5. 备份MySQL数据库

    学会用各种姿势备份MySQL数据库 提交 我的留言 加载中 已留言 目录 前言 为什么需要备份数据? 数据的备份类型 MySQL备份数据的方式 备份需要考虑的问题 设计合适的备份策略 总结 前言 我们 ...

  6. Linux Shell脚本之利用mysqldump备份MySQL数据库(详细注解)

    设计该脚本的一些设计.编写考虑: 该脚本适用于编译安装mysql和通过yum或apt-get等安装方式 该脚本可以反复执行,不会重复覆盖数据 可增加,删除N天前的备份以节省磁盘空间 充分利用mysql ...

  7. 最完整代码的用php备份mysql数据库

    最完整代码的用php备份mysql数据库 1. mydb.php //DB类 2. backup.php //备份脚本 3. restore.php //还原脚本 mydb.php <? cla ...

  8. mysql打包备份数据到_thinkPHP使用pclzip打包备份mysql数据库的方法

    本文实例讲述了thinkPHP使用pclzip打包备份mysql数据库的方法.分享给大家供大家参考,具体如下: PclZip介绍 PclZip library能够压缩与解压缩Zip格式的压缩档(Win ...

  9. mysql数据库备份到oss_备份MySQL数据库并上传到阿里云OSS存储

    1. 环境配置 要将本地文件上传到阿里云oss中, 必须使用阿里云提供的工具 ossutil, 有32位,也有64位的, Linux和Windows都有.具体可以到阿里云官网下载 本文以Linux系统 ...

最新文章

  1. 找出文件1中有而文件2中没有的数据
  2. yii框架相关知识(转)
  3. 用神经网络做分子模型:乙烯和乙炔的实验数据
  4. python random.choice报错_如何解决mtrand.RandomState.choice中的内存错误...
  5. Scala中的/,%,++,--
  6. 基于NEO的私链(Private Blockchain)
  7. 安卓编程用什么软件_震惊!安卓IOS都可以用的牛逼软件
  8. php larve,封装composer包,实现thinkphp、larverl、yii框架中使用(使用框架实现回调方法)...
  9. linux php错误日志在哪里,宝塔的php错误日志在哪
  10. IIS HTTP文件服务器搭建步骤
  11. android音乐播放功能,Android开发中如何实现一个音乐播放器功能
  12. android 左移动画_android 动画Animation之TranslateAnimation移动
  13. 为什么要学计算机演讲稿,我们为什么要学习科学演讲稿
  14. WebRoot到底是什么鬼?我改它的名可以吗?
  15. 蓝屏代码0x000009f
  16. 【每日力扣10】有效的数独
  17. C++11 auto自动推导
  18. 社保随便挂靠,会判刑罚款您知道吗?
  19. AlphaFold2预测蛋白、肽结构网站简易版教程
  20. 使用ghost 快速安装操作系统

热门文章

  1. linux服务器升级 需要什么,linux服务器升级node版本
  2. java curator_[java,zk]在 linux 上快速搭建 zookeeper curator 开发环境
  3. Java综合知识总结_基础篇
  4. 线上比赛投诉:同一赛点两支队伍比赛车模是否相同?
  5. 高压模块性相关的几个问题测量
  6. python 只执行一次_Python 定时任务实现只执行一次的方法
  7. 二叉树层序遍历递归与非递归_总结归纳:二叉树遍历【递归 amp;amp; 非递归】...
  8. c++程序目录结构_C程序结构
  9. php arrayaccess 二维,php的ArrayAccess(数组式访问接口)
  10. vscode 搭建Linux 内核开发环境