innobackupex使用实践

介绍一下环境:

MySQL:5.6.19

安装路径:/u01/mysql

数据文件:/u01/mysql/data

备份源:/u02/backup

我是异机恢复,和本机操作一样。

一、 全量备份

步骤:

./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文件为空,否则会报如下的错误

[[email protected] 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.

恢复第一步:应用日志。

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

恢复第二步:拷贝文件。

[[email protected] 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

[[email protected] support-files]# ./mysql.server start

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

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

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

[[email protected] 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/newbidb.pid).[FAILED]

3、连接MySQL的时候

[[email protected] 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 并修改文件权限。

时间: 2024-11-06 15:58:03

innobackupex使用实践的相关文章

全量备份与增量备份实践

1.1 全备备份与恢复全备实践 ####################################################################################### 1.安装Xtrabackup备份命令 wget -O /etc/yum.repos.d/epel.repo  http://mirrors.aliyun.com/repo/epel-6.repo yum -y install perl perl-devel libaio libaio-dev

Percona XtraBackup热备份实践

实验环境: 一.操作系统 [[email protected] ~]# cat /etc/redhat-release CentOS release 6.8 (Final) [[email protected] ~]# uname -a Linux DB-SERVER 2.6.32-642.el6.x86_64 #1 SMP Tue May 10 17:27:01 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux [[email protected] ~]# 二.M

XtraBackup备份恢复模拟实践

XtraBackup是Percona公司开发的一款很好用的数据备份工具,支持对InnoDB引擎数据的热备份,对MyISAM引擎的数据做备份时需要锁表,详细信息参见官网或其他资源.[XtracBackup官网] 1. 实验环境 1.1 系统环境: 操作系统:CentOS 6.5 64位 主机地址:10.0.0.26 主机名:mysql01 mysql版本:mysql-5.6.36 XtraBackup版本:2.4.12 2. 软件安装 2.1 安装mysql服务 MySQL服务详细安装过程请参考上

5.5 进入编辑模式 5.6 vim命令模式 5.7 vim实践

5.5 进入编辑模式 5.6 vim命令模式 5.7 vim实践 扩展 vim的特殊用法 http://www.apelearn.com/bbs/thread-9334-1-1.html vim常用快捷键总结 http://www.apelearn.com/bbs/thread-407-1-1.html vim快速删除一段字符 http://www.apelearn.com/bbs/thread-842-1-1.html vim乱码 http://www.apelearn.com/bbs/thr

分布式开放消息系统(RocketMQ)的原理与实践

分布式消息系统作为实现分布式系统可扩展.可伸缩性的关键组件,需要具有高吞吐量.高可用等特点.而谈到消息系统的设计,就回避不了两个问题: 消息的顺序问题 消息的重复问题 RocketMQ作为阿里开源的一款高性能.高吞吐量的消息中间件,它是怎样来解决这两个问题的?RocketMQ 有哪些关键特性?其实现原理是怎样的? 关键特性以及其实现原理 一.顺序消息 消息有序指的是可以按照消息的发送顺序来消费.例如:一笔订单产生了 3 条消息,分别是订单创建.订单付款.订单完成.消费时,要按照顺序依次消费才有意

php各种设计模式简单实践思考

前言 我一直觉得什么框架,版本,甚至语言对于一个coder来说真的不算什么,掌握一个特别高大上的一个框架或者是一个新的,少众的语言真的不算什么,因为你可以,我要花时间也可以,大家都是这样的.所以基本的显得额外重要,即是算法和数据结构,再就是好的设计模式了,,,听过一句话,是好的数据结构是让计算机更快的工作,而一个好的设计模式则是使开发者工作的更快! 单例模式 单例模式特点 $_instance 必须声明为静态的私有变量 构造函数和克隆函数必须声明为私有的,这是为了防止外部程序 new 类从而失去

VS2010 Extension实践(2)

在上一篇(VS2010 Extension (1)实践)里,主要展示了如何使用MEF扩展VS2010,来扩展编辑控制和展现自己的UI:在实现QuickToolbar的时候,发现MEF仅仅提供了很基本的编辑控制,如果需要高级的操作,比如注释选择的代码,就捉襟见肘,很是麻烦. 本篇我将展示如何深入挖掘VS2010 Extension,使它成为锋利的军刀,而不是绣花枕头.鉴于此,这里就从上面提到了的Feature--注释和取消注释选择的代码来剖析,希望可以为大家拓宽思路,更好的利用VS2010. 首先

displaytag的Excel导出实践

本文转自 http://lingceng.iteye.com/blog/1820081/ Displaytag官网有1.0, 1.1, 1.2等,注意找到对应的版本.源码和API可以在Maven库中找到.   常规的使用不是问题,这里说说关于Excel导出的问题,中文乱码,使用POI等.我使用的是Displaytag1.1. 基本导出功能   这种情况只需引入displaytag-1.1.jar.   设置column属性media="html"将不会导出,media="ex

【小程序】微信小程序开发实践

帐号相关流程 注册范围 企业 政府 媒体 其他组织 换句话讲就是不让个人开发者注册. :) 填写企业信息 不能使用和之前的公众号账户相同的邮箱,也就是说小程序是和微信公众号一个层级的. 填写公司机构信息,对公账户信息 绑定管理员微信 企业认证 公司对公账户对微信进行打款 账户自动验证后,自动认证通过,并将认证资金退回公司对公账户,费用在1元内随机 小程序发布流程 开发实践 这次的demo项目为农历和公历的转换器,重在体验开发流程. AppID(小程序ID) 做上面的那些步骤就是为了得到小程序ID