xtrabackup安装及操作技术_第1页
xtrabackup安装及操作技术_第2页
xtrabackup安装及操作技术_第3页
xtrabackup安装及操作技术_第4页
xtrabackup安装及操作技术_第5页
已阅读5页,还剩24页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2、innobackupex是参考了InnoDBHotbackup的innoback修改而来的.innobackupex是一个perl封装,封装了xtrabackup。主要恢复后,作为slave需要的一些信息,根据这些信息,可以很方便的利用备份来重做slave。3、文档:证InnoDBInnoDB、XtraDB对InnoDB引擎的增量备份,工作原理如下:LSN(LogSequenceNumber)首先,在logfile中找到并记录最后一个checkpoint(“lastcheckpointLSN”),然后开始从LSN的位置开始拷贝InnoDB的logfile到xtrabackup_logfile;接着,开始拷贝全部的数据文件.ibd;在拷贝全部数据文件结束,才停止拷贝logfileXtraBackup基于InnoDB的crash-recovery功能。它会innodb的datafile,由于不锁表,出来的数据是不一致的,在恢复的时候使InnoDB了一个redolog,又称为transactionlog,事务日志,它包含了innodb数据的所有改动情况。当InnoDB启动的时候,它会先去检查datafile和transactionlog,并且会做二步操作:一旦log发生变化,就把变化过的logpages走。为什么要急着走呢?因为transactionslog文件大小有限,写满,就会从头再开始写,在prepare过程中,XtraBackup使用到的transactionslog对备份出来的innodbdatafile进行crashrecovery。在InnoDB会一个redo日志文件,也可以叫做事务日志文件。事务日志会每一个InnoDB表数据的记录修改。当InnoDB启动时,InnoDB(前滚)已经提交的事务日志到数据文件,并将修改过但没有提交的数据进行回滚操作。Xtrabackup在启动时会记住logsequencenumber(LSN,并且所有的数据文件。过程需要一些时间,所以这期间如果数据文件有改动,那么将会使数据库处于一个不同的时间点。这时,xtrabackup会运行一个进程,用于监视事务日志,并从事务日志的修改。Xtrabackup必须持续的做这个操作,是因为事务日志是会轮转重复的写入,并且事务日志可以被重用。所以xtrabackup自启动开始,就不停的将事务日志中每个上面就是xtrabackup的备份过程。接下来是准备(prepare)过程。在这个过程中,xtrabackup使用之前的事务日志,对各个数据文件执行恢复(就像mysql刚启动时要做的一样。当这个过程结束后,数据库就可以做恢复还原了。以上的过程在xtrabackup的编译二进制程序中实现。程序innobackupex可以允许备份MyISAM表和frm文件从而增加了便捷和功能。表数据刷到硬盘上,MyISAM数据文件,最后释放锁。FLUSHTABLESWITHREADLOCKmyisamInnoDBoracleInnoDB的prepare过程可以称为recover(恢复,myisam的数据过程可以称为restore(还原。Xtrabackup和innobackupex这两个工具都提供了许多前文没有提到的功能特点。手册上有对各个功能都有详细的介绍。简单介绍下,这些工具提供了如流(streaming)备份,增量( 对innodb的数据文件具有读写权限。之所以采用read-write模式是因为XtraBackup采用了其内置的innodb打开文件,而innodb库打开文件的时候就是rw的。数据不会重用到了,OS却没有这么聪明。如果要缓存一下的话,几个G的数据,会对OS的虚拟内存造成很大的,其它进程,比如mysqld很有可能被swap出去,这样系统就会受到很大影响了。在备份innodbpage的过程中,XtraBackup每次读写1MB的数据,1MB/16KB=64个page。这个不可配置。读1MB数据,XtraBackup一页一页地遍历这1MB数据,使用innodb的buf_page_is_corrupted()函数检查此页的数据是否正常,如果数据不正常,就重新这一页,最多重新10次,如果还是失败,备份就失败了,。在transactionslog的时候,每次读写512KB的数据。同样不可以配置。基于以上原理,xtrabackup对F、XtraBackupCentOSrelease6.4(Final)[root@xtrabackup~]#uname-rm2.6.32-358.el6.x86_64x86_64[root@xtrabackup[root@xtrabackupyumyuminstallcmakegccgcc-c++libaiolibaio-develautomakeautoconfbzrbisonlibtoolncurses-develzlib-devellibgcrypt- -cdcdtarxfpercona-xtrabackup-2.1.9.tar.gzcdpercona-xtrabackup-2.1.9utils/build.shinnodb55echocdmvmvln-s/application/percona-xtrabackup-2.1.9/application/percona-cp/application/percona-xtrabackup/src/xbstream建库:create建库:createdatabase建表:createtableusers(idintprimarykeyauto_ rement,namevarchar(20)notnullunique,passwordvarchar(100)notnull,address添数据:insertintousersme,password,address)values'),建库:createdatabase建表:create建表:createtablearticles(idintprimarykey rement,contentlongtextnot添数据:insertintoarticles(id,contentvalues mkdirmkdir-p注:full_datadk_data单库备份zl_data增量备份 全库备份(All$innobackupex--defaults-file=/tmp/f--user=DBUSER--password=DBUSERPASS/path/to/BACKUP-$innobackupex--defaults-file=/tmp/f--user=DBUSER--password=DBUSERPASS/path/to/BACKUP-用法一:$innobackupex--apply-log/path/to/BACKUP-用法一:$innobackupex--apply-log/path/to/BACKUP-用法二:$innobackupex--apply-log--use-memory=4G/path/to/BACKUP- --defaults-file--defaults-file默认配置文件的路径,如果不该参数,xtrabackup将从依次从以下位置查找配置文件/etc/f、/etc/mysql/f 中只需要指定个参数即可让正常工作。--[root@xtrabackup[root@xtrabackup~]#/data/3306/mysql [root@xtrabackup[root@xtrabackup~]#rm-fr[root@xtrabackup~]#cp-ap/backup/full_data/2014-05-30_11-27-20/*[root@xtrabackup~]#chown-Rmysql.mysql[root@xtrabackup[root@xtrabackup~]#/data/3306/mysqlmysql>usetest;mysql>showtables;mysql>select*fromusers; -- --[root@xtrabackup[root@xtrabackup~]#innobackupex--defaults-file=/data/3307/f--user=root--password=123456--slave-info--[root@xtrabackup[root@xtrabackup~]#/data/3306/mysql恢复日志文 [root@xtrabackup[root@xtrabackup~]#innobackupex--defaults-file=/data/3306/f--user=root--password=123456--apply-log(--use- 方法(放弃这种方报错,它属于的一个BUG) [root@xtrabackup[root@xtrabackup~]#chown-Rmysql:mysql[root@xtrabackup[root@xtrabackup~]#/data/3306/mysqlmysql>mysql>showdatabaseslike'%test3';mysql>usetest3;mysql>showtables;mysql>select*fromusers;mysql>showcreatetable -- --[root@xtrabackup[root@xtrabackup~]#innobackupex--user=root--password=123456--defaults-file=/data/3306/f-- /backup/zl_data就是- 增量的恢复[root@xtrabackup[root@xtrabackup~]#/data/3306/mysql -- -- -- -- BASE-DIR(--------/[root@xtrabackup[root@xtrabackup~]#chown-Rmysql.mysql 检查数据略[root@xtrabackup[root@xtrabackup~]#mkdir/backup/data/yasuo- -- -- 注:--databases可以同时备份多个库 这里同时备份两个库即:ceshi和test3[root@xtrabackup[root@xtrabackup~]#innobackupex--stream=xbstream--compress--user=root--password=123456--defaults-[root@xtrabackup[root@xtrabackup~]#innobackupex--user=root--password=123456--defaults-file=/data/3306/f--databases="ceshi--stream=tar/backup/data/|gzip>/backup/data/test_ceshi.$(date+%Y%m%d-xbstream[root@xtrabackup[root@xtrabackup~]#xbstream-x backup.xbstream-C[root@xtrabackup[root@xtrabackup~]#tar-izxvftest_ceshi.2014-05-30_11-56-51.tar.gz-C[root@xtrabackup[root@xtrabackup~]#innobackupex--compress--stream=xbstream/root/backup/|ssholdboy@23"xbstream-x-innobackupinnobackup[--sleep=MS][--compress[=LEVEL]][- lude=REGEXP][--user=NAME][--[--port=PORT][--socket=SOCKET][--no-timestamp][--ibbackup=IBBACKUP-BINARY][--slave-info][--stream=tar][--defaults-file=MY.CNF][--databases=LIST][--remote-host=HOSTNAME]BACKUP-ROOT-DIR--redo-only--apply-log组,强份日志时只redo,跳过rollback。这在做增量备份时非常必要--slave-info,备份从库,加上--slave-info备份下会多生成一个xtrabackup_slave_info文件,这里会保存志文件以及偏移,文件内容类似于:CHANGEMASTERTOMASTER_LOG_FILE='',MASTER_LOG_POS=0--defaults-filextrabackupdefaults-file--apply-logxtrabackupprepare--copy-back做数据恢复时将备份数据文件拷贝到MySQLdatadir--remote-host=HOSTNAME通过ssh将备份数据到进程服务器上--stream=[tar]备份文件输出格式,tartar4ibd,该文件可在XtarBackupbinarystream=tar,则tar4ibd文件所处一定要在$PATHtar4ibdXtraBackupbinarystream=tar的xtrabackup_logfile/tmpxtrabackup_logfile(5G+ -- 当有指定--remote-hostor--stream时,事务日志临 ,默认采用MySQL配置文件中所指定的临 -- 同xtrabackupthrottle的手册。-- -- --lude=REGEXP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论