MySQL實(shí)驗(yàn)室DMB數(shù)據(jù)庫(kù)監(jiān)控及災(zāi)備系統(tǒng)之[備份模式的選擇]
來(lái)源:懂視網(wǎng)
責(zé)編:小采
時(shí)間:2020-11-09 13:19:26
MySQL實(shí)驗(yàn)室DMB數(shù)據(jù)庫(kù)監(jiān)控及災(zāi)備系統(tǒng)之[備份模式的選擇]
MySQL實(shí)驗(yàn)室DMB數(shù)據(jù)庫(kù)監(jiān)控及災(zāi)備系統(tǒng)之[備份模式的選擇]:很多企業(yè),特別是中、大型互聯(lián)網(wǎng)企業(yè)都在大量的使用MySQL數(shù)據(jù)庫(kù),并且絕大部分情況下使用的都是InnoDB存儲(chǔ)引擎。使用InnoDB存儲(chǔ)引擎有很多因素,比如事務(wù)安全、自動(dòng)恢復(fù)、行鎖、在線備份等等特性。 在MySQL數(shù)據(jù)庫(kù)應(yīng)用和運(yùn)維中,除了數(shù)據(jù)庫(kù)狀態(tài)和性能監(jiān)控之外
導(dǎo)讀MySQL實(shí)驗(yàn)室DMB數(shù)據(jù)庫(kù)監(jiān)控及災(zāi)備系統(tǒng)之[備份模式的選擇]:很多企業(yè),特別是中、大型互聯(lián)網(wǎng)企業(yè)都在大量的使用MySQL數(shù)據(jù)庫(kù),并且絕大部分情況下使用的都是InnoDB存儲(chǔ)引擎。使用InnoDB存儲(chǔ)引擎有很多因素,比如事務(wù)安全、自動(dòng)恢復(fù)、行鎖、在線備份等等特性。 在MySQL數(shù)據(jù)庫(kù)應(yīng)用和運(yùn)維中,除了數(shù)據(jù)庫(kù)狀態(tài)和性能監(jiān)控之外
很多企業(yè),特別是中、大型互聯(lián)網(wǎng)企業(yè)都在大量的使用MySQL數(shù)據(jù)庫(kù),并且絕大部分情況下使用的都是InnoDB存儲(chǔ)引擎。使用InnoDB存儲(chǔ)引擎有很多因素,比如事務(wù)安全、自動(dòng)恢復(fù)、行鎖、在線備份等等特性。 在MySQL數(shù)據(jù)庫(kù)應(yīng)用和運(yùn)維中,除了數(shù)據(jù)庫(kù)狀態(tài)和性能監(jiān)控之外
很多企業(yè),特別是中、大型互聯(lián)網(wǎng)企業(yè)都在大量的使用MySQL數(shù)據(jù)庫(kù),并且絕大部分情況下使用的都是InnoDB存儲(chǔ)引擎。使用InnoDB存儲(chǔ)引擎有很多因素,比如事務(wù)安全、自動(dòng)恢復(fù)、行鎖、在線備份等等特性。
在MySQL數(shù)據(jù)庫(kù)應(yīng)用和運(yùn)維中,除了數(shù)據(jù)庫(kù)狀態(tài)和性能監(jiān)控之外,數(shù)據(jù)庫(kù)的備份一直沒(méi)有很好的工具去管理,DMB數(shù)據(jù)庫(kù)監(jiān)控及災(zāi)備系統(tǒng)就是為解決這一矛盾而誕生的。
DMB系統(tǒng)中備份配置中總共有7種備份模式,下面將針對(duì)它們分別介紹,什么樣的情況下應(yīng)該選擇什么樣的備份模式,以實(shí)現(xiàn)最高效的備份,且盡可能的減少對(duì)業(yè)務(wù)的影響。
MYSQLDUMP:
調(diào)用MySQL系統(tǒng)的mysqldump命令進(jìn)行備份。其中在只有InnoDB的情況下,可以實(shí)現(xiàn)在線熱備,不會(huì)影響線上業(yè)務(wù);在有MyISAM表的情況下,在備份過(guò)程當(dāng)中會(huì)增加全局鎖,這時(shí)候系統(tǒng)是只讀的。備份之后會(huì)生成 master信息,可以通過(guò)備份的SQL文件和master_info.sql 創(chuàng)建slave服務(wù)。
IBBACKUP_ALL:
備份所有的InnoDB和MyISAM表,在沒(méi)有MyISAM表的情況下,備份過(guò)程中不會(huì)對(duì)線上業(yè)務(wù)造成影響,屬于在線熱備;如果存在MyISAM表,那么在備份完InnoDB之后,備份MyISAM的過(guò)程中MySQL數(shù)據(jù)庫(kù)是只讀的。備份會(huì)生成master_info.sql,用于創(chuàng)建slave。
IBBACKUP_INNODB:
針對(duì)只有InnoDB表的情況,不會(huì)備份MyISAM表,屬于在線熱備,不會(huì)造成寫(xiě)堵塞。備份會(huì)生成master_info.sql,用于創(chuàng)建slave。
IBBACKUP_NONBLOCK:
針對(duì)只有InnoDB的情況,不備份MyISAM表,屬于在線熱備,對(duì)系統(tǒng)不造成任何堵塞。備份不生成master_info.sql,不能用該備份創(chuàng)建slave,只用于備份用。
XTRABACKUP_ALL: 同 IBBACKUP_ALL
XTRABACKUP_INNODB: 同 IBBACKUP_INNODB
XTRABACKUP_NONBLOCK: 同 IBBACKUP_NONBLOCK
說(shuō)明:
- 備份模式中以IBBACKUP開(kāi)頭的調(diào)用的是 ibbackup,以XTRABACKUP開(kāi)頭的調(diào)用的是xtrabackup。
- 所有備份都包含MySQL數(shù)據(jù)庫(kù)系統(tǒng)庫(kù)mysql和配置文件my.ini
- 在不清楚的情況下備份模式可以選擇MYSQLDUMP、IBBACKUP_ALL、XTRABACKUP_ALL 。
- IBBACKUP、XTRABACKUP都屬于物理備份,恢復(fù)速率比MYSQLDUMP要大,能縮短恢復(fù)時(shí)間。
- 其中 IBBACKUP_NONBLOCK、XTRABACKUP_NONBLOCK不會(huì)調(diào)用flush操作,因此在任何情況下都不會(huì)影響在線業(yè)務(wù)。而其他幾種備份模式因?yàn)闉榱巳〉胢aster info信息,有些會(huì)在瞬間加上全局鎖然后釋放,在極端情況下會(huì)對(duì)數(shù)據(jù)庫(kù)造成一定影響。具體情況以及針對(duì)現(xiàn)有MySQL的patch會(huì)在后續(xù)的blog中加以闡述。
Related posts:
- MySQL企業(yè)級(jí)數(shù)據(jù)庫(kù)災(zāi)備(備份)系統(tǒng)-DMB v2.1發(fā)布
- MySQL5.5復(fù)制/同步的新特性及改進(jìn)
- MySQL vs NoSQL 效率與成本之爭(zhēng)
- MySQL 5.5 Released(非GA)
- MySQL5.6發(fā)布及其新特性
? 譚俊青 發(fā)布在 MySQL性能、MySQL Cluster集群、MySQL HA高可用等研究 - MySQL實(shí)驗(yàn)室, 2011.
可以任意轉(zhuǎn)載, 但轉(zhuǎn)載時(shí)務(wù)必以超鏈接形式標(biāo)明文章原始出處 和 作者信息。
鏈接: http://www.mysqlab.net/blog/2011/04/dmb-database-mysql-backup-method/
標(biāo)簽: DMB, ibbackup, xtrabackup, 在線熱備, 備份
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
MySQL實(shí)驗(yàn)室DMB數(shù)據(jù)庫(kù)監(jiān)控及災(zāi)備系統(tǒng)之[備份模式的選擇]
MySQL實(shí)驗(yàn)室DMB數(shù)據(jù)庫(kù)監(jiān)控及災(zāi)備系統(tǒng)之[備份模式的選擇]:很多企業(yè),特別是中、大型互聯(lián)網(wǎng)企業(yè)都在大量的使用MySQL數(shù)據(jù)庫(kù),并且絕大部分情況下使用的都是InnoDB存儲(chǔ)引擎。使用InnoDB存儲(chǔ)引擎有很多因素,比如事務(wù)安全、自動(dòng)恢復(fù)、行鎖、在線備份等等特性。 在MySQL數(shù)據(jù)庫(kù)應(yīng)用和運(yùn)維中,除了數(shù)據(jù)庫(kù)狀態(tài)和性能監(jiān)控之外