亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

MySQL使用Xtrabackup備份流程詳解

瀏覽:6日期:2023-10-04 13:35:32
01 背景

Xtrabackup是Percona公司開發的一款開源的MySQL熱備份工具,之前的工作中也是經常使用,但是也僅僅是停留在使用的階段,對于這個工具的細節,并沒有做過多的研究,今天細細看了一下過程,還是有點收獲的,寫下來記錄一下,有不對的地方,還請指正。

Xtrabackup工具能夠備份InnoDB,XtraDB和MyISAM的表,它支持Percona Server的所有版本,而且兼容MySQL,也兼容MariaDB,還支持一些高級的特性,例如流方式備份、壓縮、加密、以及增量備份等等。

優點如下:

1、無需停止數據庫進行InnoDB熱備份,在50G以上的數據量備份時候,應該是首選工具。

2、支持增量備份MySQL并通過流傳輸到其他的服務器上。

3、備份MySQL的時候不會增加服務器的負載。

02 簡介

在這個工具中,最主要的應用程序有兩個,分別是innobackupex與xtrabackup,其中前者是perl腳本,后面是C++變異的二進制程序,需要注意,后者不能備份除了Innodb存儲引擎的其他表。Innobackup是對xtrabackup的封裝,可以備份非Innodb的表。

以上所述,可能大家都知道,這里需要留意,由于mysql等系統數據庫中的表有些存儲引擎是基于MyISAM的,所以一般情況下使用innobackupex來備份系統庫。

03 工作流程

下面講述Innobackupex和Xtrabackup的工作流程,可能有些交叉的部分,二者共同完成備份任務。

主要的工作流程如下:

1、innobackupex啟動之后,首先會創建xtrabackup進程,并且啟動,然后等待xtrabackup完成innodb相關文件的備份。

2、xtrabackup在備份InnoDB相關文件時,會開啟如下兩種線程,一種是ibd復制線程,負責復制表空間ibd文件,一種是redo log復制線程,負責復制redo log信息。其中redo log線程先于ibd線程開始,redo log線程會從最近的checkpoint點開始復制redo log,(關于checkpoint,之前的文章中講過),復制完成之后啟動ibd線程。需要注意的是,在這個過程中,innobackupex進程處于等待狀態,等待被xtrabackup進程喚醒。

3、xtrabackup復制ibd完成之后(redo log線程可能還在工作),通知innobackupex進程,同時自己進入wait狀態。

4、innobackupex收到通知,會執行備份鎖,渠道一致性的位點,然后開始復制非innodb的文件。

5、當非innodb文件復制完成之后,innobackupex開始獲取binlog的位置。

6、創建xtrabackup_binlog_info文件,并將binlog的點位信息寫入文件中。

7、接著,innobackupex會發起一個通知給xtrabackup進程,同時自己進入等待狀態。

8、xtrabackup進程收到通知后,就會停止redo log的復制線程,并告知redo log復制完畢,然后通知innodbbackupex開始釋放鎖。

9、緊接著,就是一些收尾工作,釋放資源,備份元數據信息,打印備份目錄,備份binlog的位置信息,以及寫入xtrabackup_info文件信息等。

10、innobackupex進程等待xtrabackup進程結束后退出。

04 一些疑問

1、為什么要復制redo log?

這是因為備份ibd文件的過程中,該文件可能被修改,這樣備份出來的文件就有可能是包含臟數據的,在恢復的時候,需要聽過redo log進行數據恢復,也就是應用已經提交的事務,回滾那些沒有提交的事務。

2、innobackupex和xtrabackup是如何交互的?

其實本質是通過刪除和創建兩個特定的文件,這兩個進程都會監聽指定目錄下是否包含特定的文件,如果包含,就進行工作,不包含,則停止工作,進入等待狀態。

05 備份文件

一般備份完成之后,備份目錄中會產生7個重要的文件,包含:

backup-my.cnf:此文件包含了備份所需的my.cnf中的選項?;謴偷臅r候,會依賴這個文件。 xtrabackup_checkpoints:記錄備份的類型、備份的狀態信息、增量備份依賴于這個信息 xtrabackup_binlog_info:該文件記錄備份時候的二進制文件信息和偏移量位置信息。 xtrabackup_binlog_pos_innodb:該文件記錄了innodb表的二進制文件和位置信息,當執行--apply-log的時候,會創建這個文件。 xtrabackup_binary:該文件記錄備份進程使用的xtrabackup二進制文件。 xtrabackup_logfile:該文件記錄apply log操作時所需的數據,如果apply log的時間比較長,這個文件就會很大。 xtrabackup_slave_info:這個文件很常用,它記錄了在建立主從關系的時候,change master 語句所需要的信息。

以上就是MySQL使用Xtrabackup備份流程詳解的詳細內容,更多關于MySQL使用Xtrabackup備份的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 日本三级免费片 | 手机看片1024欧美一级 | 免费黄色在线视频观看 | 狼人综合伊人网 | 色黄啪啪18周岁以下禁止观看 | 五月婷婷六月天 | 九九热视频在线播放 | 久久黄色一级视频 | 91精品国产91久久久久久青草 | 色琪琪综合网站 | 免费看啪啪网站 | 国产精品香蕉在线一区 | 麻豆影视在线播放 | 中文字幕一级毛片视频 | 手机看片日韩国产一区二区 | 久久久久国产精品免费网站 | a级黄色大片在线观看视频男男 | 国产妇女在线 | 国产视频在线观看福利 | 国产逼| 久久免费国产 | 国内精品一区二区在线观看 | 国产成人综合在线观看网站 | 日韩黄在线观看免费视频 | 国产精品嫩草视频永久网址 | 久久综合九色综合97手机观看 | 一级毛片视频免费 | 国产一区 在线视频 | www麻豆| 亚洲欧美日韩精品久久久 | 免费看午夜高清性色生活片 | 成人精品美女隐私漫画 | 香蕉成视频片在线观看 | 国产国产人成免费视频77777 | 很黄很色的小视频在线网站 | aaa一级最新毛片 | 久久va| 欧美大穴 | 嘿咻18视频在线看 | 欧洲美女高清一级毛片 | 国产精品女人在线观看 |