码迷,mamicode.com
首页 > 数据库 > 详细

centos mysql 实战 第十三节课

时间:2016-05-16 21:34:32      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:

centos mysql 实战 第十三节课 

 

 

Xtrabackup
1. innobackupex 怎么进行备份
基本使用命令的介绍
2. innobackupex备份原理是什么
LSN介绍
数据页合并
3. innobackupex对于多种存储引擎怎么实现备份数据一致性

 


Percona公司推出的

技术分享

 

 

 

 

 

 

 

 

 

yum 安装或rpm安装
https://www.percona.com/doc/percona-xtrabackup/2.4/installation/yum_repo.html
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
yum install percona-xtrabackup-24


备份命令
innobackupex —defautls-file=/etc/my.cnf /data/backup/
默认会以时间戳建立目录,也可以使用—no-timestamp 这个参数不建立目录


xtrabackup
innobackup
这两个软件是什么关系呢?
innobackupex 调用 xtrabackup
innodbackup perl 脚本
Xtrabackup c程序
xtrabackup 是copy innodb物理文件
innobackupex 和 xtrabackup,前者是一个 perl 脚本,后者是 C/C++ 编译的二进制。
xtrabackup 是用来备份 InnoDB 表的,不能备份非 InnoDB 表,和 mysqld server 没有交互;innobackupex 脚本用来备份非 InnoDB 表,同时会调用 xtrabackup 命令来备份 InnoDB 表,还会和 mysqld server 发送命令进行交互,如加读锁(FTWRL)、获取位点(SHOW SLAVE STATUS)等。简单来说,innobackupex 在 xtrabackup 之上做了一层封装。


innobackupex备份原理是什么
LSN : log seq number
show engine innodb status\G;

技术分享

 

 

 

redo日志
ib_logfile0, ib_logfile1, ib_logfile2 …
Block 大小 512 byte
binlog position 文件的大小的便移量
8192 ->
ib_logfile0 10M
10*1024 *1024/512 =20480
redo 位置
ib_logfile -> redo


三个日志文件都写满了怎么办?
3*10*1024*1024
LSN%总共可以分配的号
定位给定一个lsn是在哪个iblogfile的哪个偏移
三个iblogfile总共可以有1200 号
LSN%1200 ->
innodb page format


header 38字节 trailer 8 字节

技术分享

技术分享

Flush LSN

 

 

Flush LSN
基于事务的操作每个操作都有一个唯一的编号号
这个编号就是LSN号
事务ID

 

Page编号也是唯一的,LSN也是唯一的,是不是两个都能对应起来了。
iblogfile不要分大小,建议可以分成1G一个


<5.6 的官方版本不能超过4个iblogfile文件
淘宝也是把Redo分成4个文件
redo 总共不能大于4G
>=5.6之后没有这个限制

 技术分享

 

 

 

 

 

 

 

 

 

 

 

 

 

f

centos mysql 实战 第十三节课

标签:

原文地址:http://www.cnblogs.com/MYSQLZOUQI/p/5499253.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!