在线热备份数据库innobackupex 完整备份InnoDB

XtraBackup

  • xtrabackup C程序,支持InnoDB/XtraDB
  • innobackupex : 以Perl脚本封装xtrabackup,还支持MyISAM

个人建议由innobackupex增量/完整 + binlog 基本上可以满足小型企业需求

percona-xtrabackup安装部署

  • 依赖库:libev.so
  • 安装依赖事件库 libev
  • 安装percona-xtrabackup
常用选项 含义
- - host 主机名
- - user 用户名
- - port 端口号
- - databases 数据库名
- - password 密码
- - no-timestamp 不用时间命名备份子目录

-- databases 不加该参数则为 备份所有数据库

--databases="库名 库名" 指定多个库

--databases="库1.表名" 备份单张表

  • 安装percona-xtrabackup
yum install -y  libev-4.15-1.el6.rf.x86_64.rpm
yum install -y percona-xtrabackup-24-2.4.7-1.el7.x86_64.rpm
  • 建立测试环境和数据使用percona-xtrabackup 进行完整备份恢复.
create database lqh1;
create table lqh1.tb1(id int );
insert into lqh1.tb1 values (1),(2),(3);
  • 使用innobackupex对数据库进行完整备份
innobackupex --user root --password Aa123456. /fullbackup  --no-timestamp

这里使用的是本机备份,也可以结合脚本在异机备份,使用参数--host

这里使用的是不指定数据库,对数据库所有库所有表进行备份,也可以通过参数--databases指定数据库.

这里备份目录/fullbackup可以不用创建,备份程序会自动进行创建

  • 接下来使用完整备份进行恢复
  • 在目标机器上先停止mysql服务.
systemctl stop mysqld
  • 将恢复目标机器上的mysql数据目录(默认安装路径/var/lib/mysql)下的文件打包移走,仅仅留下空目录即可.
tar -zcvPf /home/mysqldata.tar.gz /var/lib/mysql && rm -rf /var/lib/mysql/*
  • 应用innobackupex备份日志,准备进行完整恢复.
innobackupex --apply-log /fullbackup
  • 进行innobackupex拷贝数据库(要求mysqldata 文件夹为空)
innobackupex --copy-back  /fullbackup
  • 将恢复的目录里面所有的文件和文件夹属组该成mysql,让mysql拥有权限操作,因为使用root操作的innobackupex所以目前是root
chown -R mysql:mysql /var/lib/mysql/*
  • 重启mysql服务,校验恢复结果
select * from lqh1.tb1;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
+------+

在线热备份数据库之innobackupex 完整备份InnoDB的更多相关文章

  1. 在线热备份数据库之innobackupex 增量备份InnoDB

    在线热备份数据库之innobackupex 增量备份InnoDB 什么是增量备份?其原理是什么? 增量备份是基于上一次备份后对新增加的内容进行备份,优点相较于完整备份而言备份内容少时间短,能够节省磁盘 ...

  2. Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份)

    原文地址:http://www.tuicool.com/articles/RZRnq2 Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对In ...

  3. Percona备份mysql全库及指定数据库(完整备份与增量备份)

    Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份) Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对I ...

  4. Percona Xtrabackup备份mysql大数据库(完整备份与增量备份)

    Percona Xtrabackup备份mysql大数据库(完整备份与增量备份)     文章目录 [隐藏] Xtrabackup简介 Xtrabackup安装 Xtrabackup工具介绍 inno ...

  5. MariaDB之基于Percona Xtrabackup备份大数据库[完整备份与增量备份]

    MariaDB之基于Percona Xtrabackup备份大数据库[完整备份与增量备份] 1.Xtrabackup的安装 percona-xtrabackup-2.2.3-4982.el6.x86_ ...

  6. 使用xtrabackup备份innodb引擎的数据库

    innodb引擎的数据库可以使用mysqldump备份,如果表很大几十个G甚至上百G,显示用mysqldump备份会非常慢.然后使用xtrabackup 可以很快的在线备份innodb数据库.Inno ...

  7. 配合crond服务实现自定义周期备份MySQL数据库(使用innobackupex进行备份)

    备份 新建一个脚本/root/backup.py,内容如下: #!/usr/bin/env python# -*- coding: utf-8 -*- ''' 脚本作者:昨夜星辰 脚本作用:配合cro ...

  8. 阿里云 如何减少备份使用量? mysql数据库的完整备份、差异备份、增量备份

    RDS for MySQL备份.SQL审计容量相关问题_MYSQL使用_技术运维问题_云数据库 RDS 版-阿里云 https://help.aliyun.com/knowledge_detail/4 ...

  9. SQLserver2008数据库备份和还原问题(还原是必须有完整备份)

    首先,我要说明的是你必须拥有完整的数据库备份,下面的还原教程,才算有用,如果其它问题,请搜索别的大牛的解决办法,本方法只适合菜鸟. 这个连接是站长大人的异常恢复方法,有问题可以自己学习http://w ...

随机推荐

  1. 白话HTTPS加密机制

    在讲主题之前,我们先来区分两个概念:签名和加密有什么区别? 我们从字面意思看: 签名就是一个人对文件签署自己的名字,证明这个文件是我写的或者我认可的,所以只要别人看到我的签名,认识我字迹的人就知道这个 ...

  2. mysql 生成数据字典sql语句

    SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENT FROM information_schema. C ...

  3. @ConfigurationProperties、@Value、@PropertySource

    @ConfigurationProperties(spring-boot依赖下).@Value(spring-beans依赖下).@PropertySource(spring-context依赖下) ...

  4. docker服务在Mac上的启动与使用

    在mac上打开安装的docker软件就可以启动docker服务了 点击顶部状态栏中鲸鱼图标会弹出操作菜单,显示着服务的状态,如下图所示: 只有在docker服务启动了之后,才可以在终端使用docker ...

  5. Spring Boot 2.X(七):Spring Cache 使用

    Spring Cache 简介 在 Spring 3.1 中引入了多 Cache 的支持,在 spring-context 包中定义了org.springframework.cache.Cache 和 ...

  6. Color Length UVALive - 5841

    题文:见网页:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=sho ...

  7. 你真的了解Web前端开发吗?未来前端远比你想的有前途!

    近几年来,随着 HTML5.JS 的流行,前端这个职业火热了起来!不少人发出疑惑,前端以后还会更有前途吗? 我只能告诉你:前端不灭 现在都明白了用户体验至上,还要用着舒服 后端提供床,前端提供颜值高的 ...

  8. PHP array_udiff_uassoc

    1.函数的参数:返回数组的差集.用定义的函数比较键值和值. 2.函数的参数: @params array $array @params array $array1 ... @params callab ...

  9. Tomcat 的单机多实例配置

    有时候需要在一个服务器上部署多个Tomcat,通过不同的端口进行区分,比如,反向代理.但是不想简单的通过复制Tomcat来实现,这样既不方便以后的升级也不方便管理,那么这时候就需要配置Tomcat的单 ...

  10. 并发编程之Fork/Join

    并发与并行 并发:多个进程交替执行. 并行:多个进程同时进行,不存在线程的上下文切换. 并发与并行的目的都是使CPU的利用率达到最大.Fork/Join就是为了尽可能提高硬件的使用率而应运而生的. 计 ...