time innobackupex --defaults-file=/data/mysql/3306/my.cnf --user=root --password=123456 \
--rsync --parallel=2 --socket=/data/mysql/3306/mysql.sock --stream=tar /databackup/xtrabackup | gzip >/databackup/xtrabackup/`date +%F_%H-%M-%S`.tar.gz

一、 全量备份

步骤:

./innobackupex --user=root --password=root --host=172.17.210.112 --parallel=4 --throttle=400 --stream=tar /mysqlbak/innobackupex 2>/mysqlbak/innobackupex/bak.log 1>/mysqlbak/innobackupex/fullbak.tar

注释一下,常用的参数。

--user=root                              备份操作用户名,一般都是root用户
--password=root123                        密码
--host=172.17.210.112                    主机ip,本地可以不加
--parallel=4 --throttle=400              并行个数,根据主机配置选择合适的,
                                          默认是1个,多个可以加快备份速度。
--stream=tar                              压缩类型,这里选择tar格式,可以加,可不加。
                                          加上文件就小一点,在备份的时候就已经打包好了。
/mysqlbak/innobackupex                    备份存放的目录
2>/mysqlbak/innobackupex/bak.log          备份日志,将备份过程中的输出信息重定向到bak.log
1>/mysqlbak/innobackupex/fullbak.tar      备份文件压缩后的名字

给出不压缩的全备:

./innobackupex --user=root --password=root --host=172.17.210.112 --parallel=4 --throttle=400 /mysqlbak/innobackupex 2>/mysqlbak/innobackupex/bak.log 1>/mysqlbak/innobackupex/

查看日志信息,会出现

141011 09:44:02  innobackupex: Executing FLUSH ENGINE LOGS...
141011 09:44:02  innobackupex: Waiting for log copying to finish
xtrabackup: The latest check point (for incremental): '14275993522'
xtrabackup: Stopping log copying thread.
.>> log scanned up to (14275993522)
xtrabackup: Creating suspend file '/tmp/xtrabackup_log_copied' with pid '19659'
141011 09:44:03  innobackupex: All tables unlocked
141011 09:44:03  innobackupex: Waiting for ibbackup (pid=19659) to finish
xtrabackup: Transaction log of lsn (14275990028) to (14275993522) was copied.
innobackupex: Backup created in directory '/mysqlbak/innobackupex'
141011 09:44:04  innobackupex: Connection to database server closed
innobackupex: You must use -i (--ignore-zeros) option for extraction of the tar stream.
141011 09:44:04  innobackupex: completed OK!

表示备份成功。

二、全量恢复

恢复备份文件要保证datadir文件为空,否则会报如下的错误

[root@linuxidc data]# innobackupex --user=root  /data/backup/
IMPORTANT: Please check that the copy-back run completes successfully.
          At the end of a successful copy-back run innobackupex
          prints "completed OK!".
Original data directory is not empty! at /usr/bin/innobackupex line 568.

恢复第一步:应用日志。

[root@linuxidc bin]# ./innobackupex --user=root --password=root1 --defaults-file=/etc/my.cnf --apply-log /u02/backup/

恢复第二步:拷贝文件。

[root@linuxidc bin]# ./innobackupex --user=root --password=root1 --defaults-file=/etc/my.cnf --copy-back /u02/backup/

注释一下,常用的参数。

--defaults-file=/etc/my.cnf    恢复会使用my.cnf文件把需要恢复的文件,恢复到my.cnf指定的位置。

--apply-log                          这是备份时产生的日志,

--copy-back                        这是备份源,解压后的备份文件。

恢复需要一点点的时间,出现下面信息表示恢复成功。

innobackupex: Starting to copy InnoDB system tablespace
innobackupex: in '/u02/backup'
innobackupex: back to original InnoDB data directory '/u01/mysql/data'
innobackupex: Copying '/u02/backup/ibdata1' to '/u01/mysql/data/ibdata1'
innobackupex: Starting to copy InnoDB undo tablespaces
innobackupex: in '/u02/backup'
innobackupex: back to '/u01/mysql/data'
innobackupex: Starting to copy InnoDB log files
innobackupex: in '/u02/backup'
innobackupex: back to original InnoDB log directory '/u01/mysql/data'
innobackupex: Copying '/u02/backup/ib_logfile1' to '/u01/mysql/data/ib_logfile1'
innobackupex: Copying '/u02/backup/ib_logfile0' to '/u01/mysql/data/ib_logfile0'
innobackupex: Finished copying back files.

恢复第三步:修改文件权限。

cd 到data目录

chown -R mysql.mysql data/

可能出现的报错:

1、出现下面错误,先初始化一下mysql

[root@linuxidc support-files]# ./mysql.server start

Starting MySQL...The server quit without updating PID file (/u01/mysql/data/linuxidc.pid).[FAILED]

[root@linuxidc script]# ./mysql_install_db --basedir=/u01/mysql --no-defaults --skip-name-resolve --user=mysql --datadir=/u01/mysql/data

2、权限:应该恢复使用的是root用户,但是MySQL需要MySQL用户去访问。

[root@linuxidc support-files]# ./mysql.server restart

MySQL server PID file could not be found![FAILED]

Starting MySQL.The server quit without updating PID file (/u01/mysql/data/linuxidc.pid).[FAILED]

3、连接MySQL的时候

[root@linuxidc bin]# ./mysql -uroot -p

Enter password:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

没有这个文件,touch  mysql.sock 并修改文件权限。

innobackupex的更多相关文章

  1. Xtrabackup原理及使用innobackupex进行MySQL数据库备份恢复

    Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具. Xtrabackup中主要包含两个工 ...

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

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

  3. 通过innobackupex实现对MySQL的增量备份与还原

    备份 增量备份是基于完整备份的,所以我们需要先做一次完整备份: innobackupex --password=test /backup/ 备注:test是我的MySQL服务的root用户的密码,/b ...

  4. 通过innobackupex实现对MySQL的完整备份与还原

    备份 新建一个用于存放备份的目录 mkdir /backup 执行以下命令: innobackupex --password=test /backup/ 执行完后你会看到“completed OK!” ...

  5. 数据库热备份工具innobackupex的安装

    Xtrabackup是由percona开发的一个开源软件,此软件可以说是innodb热备工具ibbackup的一个开源替代品. 这个软件是由2个部分组成的:xtrabackup和innobackupe ...

  6. innobackupex --rsync 报错 Error: can't create file (null)/xtrabackup_rsyncfiles_pass1

    在使用最新版的innobackupex(2.3.2): innobackupex /backup --rsync --user=xx --password=xxx 备份时报错: Error: can' ...

  7. Mysql备份系列(3)--innobackupex备份mysql大数据(全量+增量)操作记录

    在日常的linux运维工作中,大数据量备份与还原,始终是个难点.关于mysql的备份和恢复,比较传统的是用mysqldump工具,今天这里推荐另一个备份工具innobackupex.innobacku ...

  8. MySQL的热备percona-xtrabackup、innobackupex的安装方法

    http://blog.csdn.net/dbanote/article/details/13295727 http://blog.csdn.net/yangzhawen/article/detail ...

  9. innobackupex的安装

    innobackupex的安装方法有3种: 通过RPM包安装: 通过源码包安装: 通过二进制包安装. 第3种方法最简单,这里只介绍它.以下是安装步骤: 打开官方下载链接: Version默认是最新版本 ...

  10. innobackupex 重启MySQL

    当重新修改了MySQL的数据目录时: 重启报错: Starting MySQL.The server quit without updating PID file (/[FAILED]l/mysql/ ...

随机推荐

  1. Spring Boot 揭秘与实战(九) 应用监控篇 - 自定义监控端点

    文章目录 1. 继承 AbstractEndpoint 抽象类 2. 创建端点配置类 3. 运行 4. 源代码 Spring Boot 提供的端点不能满足我们的业务需求时,我们可以自定义一个端点. 本 ...

  2. sequence to sequence模型

    sequence to sequence模型是一类End-to-End的算法框架,也就是从序列到序列的转换模型框架,应用在机器翻译,自动应答等场景. Seq2Seq一般是通过Encoder-Decod ...

  3. Python学习笔记第十二周

    目录: 数据库介绍 mysql 数据库安装使用 mysql管理 mysql 数据类型 常用mysql命令事务 索引 创建数据库 外键 增删改查表 权限 python 操作mysql  ORM sqla ...

  4. 安卓 dex 通用脱壳技术研究(四)

    /*     当第一个类执行到此函数时,我们在dvmDefineClass执行之前,也就是第一个类加载之前     注入我们的dump代码:即DumpClass()函数 */ static void  ...

  5. 新添加一块硬盘制作LVM卷并进行分区挂载

    linux服务器新添加一块硬盘,可以直接将盘格式化挂载就能用,比如挂载在/usr/local目录,但是这样有一个弊端,就是如果这一块磁盘满了,后续想要扩容的话,不能继续挂载这个/usr/local挂载 ...

  6. [LeetCode&Python] Problem 543. Diameter of Binary Tree

    Given a binary tree, you need to compute the length of the diameter of the tree. The diameter of a b ...

  7. AangularJS相关术语

    1.   数据模型对象(model object)是指$scope对象.$scope对象又是一个简单的JavaScript对象,其中的属性可以被视图访问,也可以同控制器进行交互. 2.  $scope ...

  8. 【shell编程】之基础知识-常用命令

    一.Shell echo命令 Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出.命令格式: echo string 您可以使用echo实现更复杂的输出格式控制. ...

  9. 【mybatis源码学习】调试mybatis的第一个程序

    [一].基础知识准备 mybatis-config.xml配置文件的结构 MyBatis配置文件中大标签configuration下子标签包括: configuration |--- properti ...

  10. VM安装系统时提示硬件不支持(unsupported hardware detected)

    修改一下虚拟机配置,把CD/DVD中使用的autoinst.iso替换成需要安装的系统镜像文件 然而,后面发现还是会报这个错,不过,却可以正常安装下去.但是如果不修改这里的话,安装系统时会出错