一、mysqldump+binlog备份与恢复

此方式是完全备份,通过备份二进制日志实现增量备份。具体步骤如下:

 ①创建备份的目录

  

②创建备份的数据库和表。

 ③备份数据库

  

 ④向表中插入数据。

⑤进行增量备份,备份二进制日志。 【记得开启二进制日志】

mariadb配置文件


⑥进行增量备份,备份二进制日志

查看二进制日志


再添加一条数据进行备份二进制日志

  ⑦继续插入数据,没有备份,模拟误删除数据库。


将最后操作的二进制日志进行备份

查看最后操作日志的命令:

mysqlbinlog /var/lib/mysql/log-bin.0000002 (注:×××代表自定义二进制日志的名)


  ⑧导入之前所有备份

⑨查看数据库及数据。

恢复成功。

 二、xtrabackup方式备份

对InnoDB:热备,支持完全备份和增量备份

对MyISAM:温备,只支持完全备份

特点:

(1)备份过程快速、可靠

(2)备份过程不会打断正在执行的事务

(3)能够基于压缩等功能节约磁盘空间和流量

(4)自动实现备份检验

(5)还原速度快

实现步骤:

 ①安装包。

yum install xtrabackup

②进行完全备份。

命令:innobackupex --user=root /app/backup/,并进行修改权限。


修改mariadb配置文件,修改目录路径。

重启数据库查看数据库内容。

 ③实现增量备份

对test数据库的backup表里增加数据。


命令:innobackupex --incremental /app/backup/ --incremental-basedir=/app/backup/2017-11-16_15-49-35 【尽量写绝对路径】

 ④实现数据恢复

数据恢复准备:

命令:innobackupex --apply-log --redo-only /app/backup/2017-11-16_16-42-25/

模拟损坏数据库。

命令:mv /var/lib/mysql /var/lib/mysql.bak

创建mysql  mkdir mysql

cd mysql/  执行命令:innobackupex --copy-back /app/backup/2017-11-16_16-45-10

重启数据库进行查看

三、基于lvm快照+binlog实现备份。

①添加一块硬盘

②进行分区,并格式化LVM格式。

③创建逻辑卷组并进行挂载。

④移动数据库文件,修改数据库配置文件,进行重启。

修改权限:chown -R mysql:mysql /mnt/lvs_snap/

⑤创建测试数据库,并锁定数据库。

⑥给数据库进行快照,并解锁所有表。

⑦挂载创建的快照,并对其内容进行打包。

mkdir /mnt/test_snap -p

mount /dev/mysql/test-snap /mnt/test_sanp/

tar cvf /app/mysqlbackup.tar /mnt/tset_snap/

  ⑧取消挂载,删除快照。

umount /mnt/test_snap

rm -rf /dev/mysql/test-snap

⑨删除数据库,并对压缩包解压。

rm -rf /mnt/lvm_snap/*

tar xvf /app/mysqlbackup.tar /mnt/lvm_snap/

⑩重启服务,验证是否数据恢复。

本文转自 LUksl 51CTO博客,原文链接:http://blog.51cto.com/19940919/1983904

实现多种方式对MYSQL进行备份相关推荐

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

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

  2. MySQL数据备份方式,及热备与冷备的优缺点

    一.按照数据库的运行状态分类: (1) 热备:在数据库运行时,直接进行备份,对运行的数据库没有影响 (2) 冷备:在数据库停止运行的时候进行备份,这种备份方式最为简单,只需要拷贝数据库物理文件即可. ...

  3. mysql增量备份xtrabackup(innobackupex)方式

    mysql增量备份xtrabackup(innobackupex)方式 1.首先对数据库进行全备份 当前数据库表数据 数据库全备份 innobackupex --user=admin --passwo ...

  4. [ MySQL ] 使用Navicat进行MySQL数据库备份 / 还原(Part 2:备份.sql文件方式)

    本文主要讲解如何用Navicat(Navicat Premium ,或者Navicat for mysql)进行MySQL备份和恢复数据库(利用.sql文件的方式). 关于MySQL数据库备份,本博客 ...

  5. MySQL插入数据的多种方式

    插入数据的多种方式 replace关键字插入数据 语法: REPLACE [LOW_PRIORITY | DELAYED][INTO] tbl_name[PARTITION (partition_na ...

  6. [ MySQL ] 使用Navicat进行MySQL数据库备份 / 还原(Part 1:备份.nb3文件方式)

    本文主要讲解如何用Navicat(Navicat Premium ,或者Navicat for mysql)进行MySQL备份和恢复数据库. 本文主要大纲为:使用Navicat备份工具方式进行备份和还 ...

  7. mysql全备份xtrabackup(innobackupex)方式

    mysql全备份xtrabackup(innobackupex)方式 1.下载安装xtrabackup https://www.percona.com/downloads/Percona-XtraBa ...

  8. mysql数据备份的三种方式

    1.使用mysql dump命令,dump出sql文件,再导入到其他机器数据库里 2.使用sqlyog工具导出sql,再从其他机器里导入 3.迁移data文件夹(不适合跨版本) 参考链接:mysql数 ...

  9. Mysql数据库的简单备份与还原_史上最简单的MySQL数据备份与还原教程

    本文主要为大家详细介绍了史上最简单的MySQL数据备份与还原教程第一篇,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家. 数据备份与还原第一篇分享给大家,具体内容如下 基础概念: ...

最新文章

  1. 利用python实现简易版的贪吃蛇游戏(面向python小白)
  2. suse11/12关闭防火墙
  3. 如何安装和使用RAutomation
  4. 中国小金属行业十四五供应需求及发展前景研究报告2021版
  5. networkX如何读取存储图的二进制.dat文件
  6. 洛谷P5055 【模板】可持久化文艺平衡树(FHQ Treap)
  7. ORA-17129=SQL 字符串不是DML 语句
  8. NIPS风波 | 获奖者登台开炮:ML是炼金术,大神LeCun强硬回怼
  9. CSS设置中文字体无效乱码问题
  10. 计算机更新过后cad,CAD2022更新了什么?具有哪些新功能?
  11. consul connect envoy 启动acls和tls后,grpc连接异常
  12. 2022年信息学奥赛介绍
  13. python就业方向
  14. 循序渐进学Java day1
  15. 学习笔记 - 大数据导论
  16. MySQL中联合索引问题,
  17. 大数据分析 2021年Q3酒店品牌营销网络传播特征
  18. 滴滴轮回--顺风车带有明显的性暗示
  19. 【刚刚开源!】超级优秀地解决Python人工智能计算慢问题(附源码+长期更新+必会)
  20. numpy按照某列排序

热门文章

  1. Eclipse启动之四 : Eclipse核心框架启动(百度空间迁移)
  2. 导出Windows服务器下的Oracle数据库并导入到Linux服务器下的Oracle数据库中
  3. 细数 Windows 平台上的 NoSQL 数据库
  4. [团队公告]博客园的敏捷软件开发团队成立了
  5. java B2B2C 源码 多级分销springmvc mybatis多租户电子商城系统--配置中心服务化和高可用...
  6. golang并发编程goroutine+channel(一)
  7. Activity的插件化(三)
  8. nexus搭建maven私服
  9. 漂亮的验证码(.Net MVC)
  10. 4.4.4 Factory方法