概述

Xtrabackup是一种物理备份工具,通过协议连接到mysql服务端,然后读取并复制innodb底 层的"数据块",完成所谓的"物理备份"。

支持对innodb进行热备、增量备份、差量备份。

前面已经分享了怎么去安装xtrabackup工具,所以今天主要详细介绍 XtraBackup 备份和恢复的具体过程。


1、源数据库备份

./innobackupex --user=root --password=xxxxx --host=127.0.0.1 --databases=jpcpdb /home/xtrabackup/

查看备份出来的文件:

/home/xtrabackup/ 备份存放的位置,备份会在该目录下生成一个按照时间命名的文件夹。用--no-timestamp参数可以指定到自己想要的备份文件夹,不受时间命名的文件夹限制。


2、传到目标数据库服务器并解压

# tar -czvf xtrabackupxx.tar.gz xtrabackup/

# scp xtrabackupxx.tar.gz 10.150.xx.xx:/opt

3、恢复(目标数据库服务器执行)

3.1 --apply-log保持数据一致性

利用 --apply-log的作用是通过回滚未提交的事务及同步已经提交的事务至数据文件使数据文件处于一致性状态。

# innobackupex --defaults-file=/etc/my.cnf --use-memory=16G --apply-log /opt/xtrabackup/2018-07-24_10-43-34/为了加快速度,一般建议设置--use-memory,这个步骤完成之后,目录/opt/xtrabackup/2018-07-24_10-43-34/下的备份文件已经准备就绪。

应用完之后再查看备份文件看是否有变化:

这里可以看到redo log已经出现。xtrabackup_开头的几个文件记录了一些日志偏移量的信息和日志名和时间等信息

3.2 开始恢复

1、停止后备份从数据库文件

#service mysql stop# cp -rpf /usr/local/mysql/data/ /backup# rm -rf /usr/local/mysql/data/

说明:p保留属主属组权限

2、恢复jpcpdb数据库

innobackupex --defaults-file=/etc/my.cnf --copy-back /opt/xtrabackup/2018-07-24_10-43-34/

执行上面的命令需要保证数据库目录是空的,否则会失败,因为目录里有binlog日志,要么移走,要么就用手动复制需要的文件。总之日志不要和数据放在一起!

3、恢复mysql数据库文件(密码之类)

[root@s-pp-02 /]# cp -r /backup/mysql/ /usr/local/mysql/data/[root@s-pp-02 /]# cp -r /backup/performance_schema/ /usr/local/mysql/data/[root@s-pp-02 /]# cp -r /backup/sys/ /usr/local/mysql/data/

4、修改权限

# chown -R mysql:mysql /usr/local/mysql/# chmod -R 755 /usr/local/mysql/

5、启动数据库

#service mysql start

重启后对数据表数量、索引等做检查。


总结:

大家有空可以也可以在自己电脑测试一下,备份恢复的话xtrabackup是很不错的一个选择,后面会分享更多工作中比较多涉及的一些工具,感兴趣的朋友可以关注下!!

mysql大数据量的全量备份_mysql备份神器——Xtrabackup全量备份还原相关推荐

  1. MySQL大数据量分页查询方法及其优化

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:收藏了!7 个开源的 Spring Boot 前后端分离优质项目个人原创+1博客:点击前往,查看更多 链接:ht ...

  2. mysql大数据量分页的一些做法

    随着公司业务的增长,数据库的数据也呈指数级增长,拿订单表为例,之前公司的订单表每天只有几千个,一个月下来不超过十万.而现在每天的订单大概就是2w+,目前订单表的数据已经达到了700w.这带来了各种各样 ...

  3. easyui分页查询为什么会有下拉框_6个针对MySQL大数据量分页查询优化的锦囊妙计...

    作者:大神养成记转载来源:http://sina.lt/gauW 方法1: 直接使用数据库提供的SQL语句 语句样式: MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M ...

  4. mysql大数据量导入

    mysql大数据量导入 mysql大数据量导入 数据生成 测试数据5000万 import java.io.*; import java.util.Random;public class Genera ...

  5. 千锋重庆Java学习之MySQL大数据量分页查询方法及其优化

    方法1: 直接使用数据库提供的SQL语句 语句样式: MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M,N 适应场景: 适用于数据量较少的情况(元组百/千级) 原因/缺 ...

  6. MYSQL大数据量分页查询优化 - 十万、百万级优化

    1. 常见问题 在mysql大数据量的基础下,分页中随着页码的增加,查询时间也会响应的增加.所以到了百万级别的数据量时,我们就需要优化已有的查询代码进行合理有效的分页. 一般情况下,页码与查询时间成正 ...

  7. 使用JDBC处理MySQL大数据

    一.基本概念 大数据也称之为LOB(Large Objects),LOB又分为:clob和blob,clob用于存储大文本,blob用于存储二进制数据,例如图像.声音.二进制文等. 在实际开发中,有时 ...

  8. javaweb学习总结(三十四)——使用JDBC处理MySQL大数据

    一.基本概念 大数据也称之为LOB(Large Objects),LOB又分为:clob和blob,clob用于存储大文本,blob用于存储二进制数据,例如图像.声音.二进制文等. 在实际开发中,有时 ...

  9. Linux下MySQL数据库的备份与还原,mysql快速导入导出数据库实例演示,解决mysql大数据量数据库导出慢的问题

    MySQL 数据库的备份与还原 第一章:数据库的导入与导出 ① 数据库的导出 ② 大数据量下 mysqldump 的导出优化 ③ 数据库的导出 第一章:数据库的导入与导出 ① 数据库的导出 需要用到 ...

  10. 一次mysql大数据量查询 慢查询导致服务阻塞后的学习

    场景还原:前一个月给朋友写了个简单的登录功能,简单的查询数据库登录逻辑,使用mysbatis-plus进行的dao层代码生成(吐槽一下这个工具,真是方便一时爽,后面维护难,比较喜欢自己能够组装和优化s ...

最新文章

  1. 支持64位系统的XOR加密后内存加载PE绕过杀毒软件
  2. 从TCP到RDMA网络最新技术|扩展技术视野
  3. java查询类提供的方法_查询一个类的方法和构建器的JAVA程序
  4. SQL技巧(多行合并一列)
  5. 《机器学习系列-强填EM算法在理论与工程之间的鸿沟(上)》
  6. 算法达人看过来!你一展身手的好机会来了!
  7. php http/1.1 403 forbidden in,http常用方法有哪些
  8. boost1.55.0在vs2013上编译序列化库失败的解决方法
  9. 快速实现对接京东EDI系统
  10. linux/ubuntu16.04系统上snowboy swig源码安装及使用全记录和遇到的错误
  11. ucfirst php_PHP ucfirst()函数与示例
  12. java swrt_GitHub - EldersJavas/OpenwrtCompileScript at 68a369bb068dfcf94c9f41386bf377f680f39eac
  13. 微信机器人API开发
  14. 【深度学习】注意力机制
  15. 自动化情侣微信早安信息定时推送
  16. 微信小游戏开发实战教程13-随机生成形状功能的实现
  17. 华为如何关闭系统更新提示
  18. 安卓沉浸式状态栏_安卓平板也能有品质感,小新Pad Pro上手
  19. Ubuntu18.04更换开机登录界面壁纸
  20. C++11 for(auto x : s)statment 和 for(auto amp; x:s)statment

热门文章

  1. 深入解析TRUNCATE TABLE – 手工修复和验证过程
  2. 来了!PostgreSQL 同步流复制原理和代码浅析,请签收
  3. 算法分析:Oracle 11g 中基于哈希算法对唯一值数(NDV)的估算
  4. 自从有了这个工具,一键代码迁移不在话下
  5. 让 AI “潜入”物流中心,你的快递很快就到!
  6. Extensions in UWP Community Toolkit - ViewExtensions
  7. 【华为云技术分享】Linux内核源码结构(1)
  8. 【华为云技术分享】GitHub联合开发
  9. 【nodejs原理源码赏析(3)】欣赏手术级的原型链加工艺术
  10. 【技术角度看问题之一】ARM到底是个啥?