溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

MySQL使用中如何備份與恢復(fù)數(shù)據(jù)

發(fā)布時(shí)間:2020-04-26 14:33:36 來(lái)源:億速云 閱讀:221 作者:三月 欄目:數(shù)據(jù)庫(kù)

本文主要給大家介紹MySQL使用中如何備份與恢復(fù)數(shù)據(jù),希望可以給大家補(bǔ)充和更新些知識(shí),如有其它問(wèn)題需要了解的可以持續(xù)在億速云行業(yè)資訊里面關(guān)注我的更新文章的。

在使用MySQL的過(guò)程中,我們免不了數(shù)據(jù)的備份與恢復(fù),數(shù)據(jù)庫(kù)的遷移等操作,針對(duì)不同的情形,可以選取不同的方案。還記得之前GitLab刪庫(kù)事件嗎?在那么多牛逼的工程師力挽狂瀾下,最后還是丟失6小時(shí)的數(shù)據(jù),已經(jīng)是損失最小了。多么慘痛的教訓(xùn),也是對(duì)運(yùn)維工程師、數(shù)據(jù)庫(kù)管理員等朋友的一次經(jīng)典案例,所以我們不僅要制定合理的數(shù)據(jù)備份計(jì)劃,同時(shí)還要保證備份數(shù)據(jù)的可恢復(fù)性,整個(gè)過(guò)程要適當(dāng)?shù)难菥?。避免備份機(jī)制出現(xiàn)意外情況。

  本文主要是介紹不同的備份方式的原理和特點(diǎn),例如物理備份、邏輯備份、聯(lián)機(jī)備份、脫機(jī)備份等。相互比較,分析總結(jié),更好的選擇適合自己的備份方式與計(jì)劃。

物理備份

MySQL使用中如何備份與恢復(fù)數(shù)據(jù)

  所謂物理備份就是原始數(shù)據(jù)在操作系統(tǒng)上呈現(xiàn)什么樣的形式,備份出來(lái)就是什么樣,這種方式純屬I(mǎi)/O型的備份方案,備份形式上就是將組成數(shù)據(jù)庫(kù)的數(shù)據(jù)文件、配置文件、日志文件等相關(guān)文件,復(fù)制到其他路徑或者其他主機(jī)上。常用的方法有 (cp、rsync等),一般情況下需要停止mysql服務(wù)或者鎖表,恢復(fù)比較快。
適用場(chǎng)景大型、重要、出現(xiàn)故障時(shí)需要快速恢復(fù)的場(chǎng)景
物理備份的特點(diǎn)
    備份數(shù)據(jù)中包括完整的數(shù)據(jù)庫(kù)目錄和數(shù)據(jù)文件,對(duì)于MySQL來(lái)說(shuō),就是指MySQL的數(shù)據(jù)目錄
    物理備份一般都比較快,因?yàn)榛径际荌/O復(fù)制,不存在數(shù)據(jù)轉(zhuǎn)換。
    備份時(shí)的粒度是整個(gè)數(shù)據(jù)庫(kù)服務(wù)級(jí),某些存儲(chǔ)引擎有時(shí)也能吃吃更新的表粒度,備份粒度也決定了恢復(fù)的粒度,因此對(duì)備份策略也會(huì)有影響。
    備份數(shù)據(jù)中可以包含關(guān)聯(lián)文件,例如日志文件、配置文件等
    對(duì)于像MEMORY引擎表這類(lèi)對(duì)象,由于其數(shù)據(jù)并不保存在磁盤(pán)中,而是保存在內(nèi)存中,因此不會(huì)備份,僅能備份相關(guān)的表結(jié)構(gòu)。但是可以利用工具備份,例如MySQL Enterprise Backup(企業(yè)級(jí)產(chǎn)品)工具備份內(nèi)存表中的數(shù)據(jù)。
    備份能夠輕易恢復(fù)到配置類(lèi)似的機(jī)器上。
    對(duì)于物理備份操作來(lái)說(shuō),一般是在未啟動(dòng)的狀態(tài)下進(jìn)行,如果MYSQL服務(wù)已經(jīng)啟動(dòng),那就只能對(duì)相關(guān)的系統(tǒng)對(duì)象進(jìn)行適當(dāng)?shù)逆i定,保證數(shù)據(jù)庫(kù)的數(shù)據(jù)不會(huì)不會(huì)改變,否則備份的數(shù)據(jù)可能不是完整數(shù)據(jù),恢復(fù)后,可能存在丟失數(shù)據(jù)的情況

 執(zhí)行物理備份的方式
        操作系統(tǒng)層:cp rsync  scp  tar
        第三方工具:mysqlbackup   MySQL Enterprise Backup  MyISAM引擎專(zhuān)用 mysqlhotcopy

邏輯備份

  所謂的邏輯備份就是將數(shù)據(jù)庫(kù)定義語(yǔ)言和所有的數(shù)據(jù)轉(zhuǎn)換成SQL文件存儲(chǔ),一般有mysqldump等方式,這種方式比較適合小數(shù)據(jù)量的庫(kù)和表,當(dāng)數(shù)據(jù)量達(dá)到一定量后,備份、恢復(fù)時(shí)間長(zhǎng),同時(shí)會(huì)在備份過(guò)程中鎖表,影響比較大。
適用場(chǎng)景:小型、以便在其他云服務(wù)器上面進(jìn)行恢復(fù)的情景
邏輯備份特點(diǎn)
    備份集是基于查詢(xún)MySQL服務(wù)獲得數(shù)據(jù)庫(kù)的結(jié)構(gòu)和內(nèi)容信息
    備份速度慢于物理備份
    數(shù)據(jù)備份文件比物理備份更大,因?yàn)槭且约兾谋緢?bào)存,數(shù)據(jù)沒(méi)有經(jīng)過(guò)任何壓縮,一般是采用gzip  或者tar等方式壓縮
    備份和恢復(fù)的粒度比較靈活,可以是服務(wù)級(jí)(所有數(shù)據(jù)庫(kù)),也可以是某個(gè)庫(kù)中的某些表,甚至可以是某張表中的部分?jǐn)?shù)據(jù)
    備份集不包括日志和配置文件或者其他與數(shù)據(jù)庫(kù)相關(guān)的日志文件,這些文件都需要手動(dòng)備份
    備份集通用性比較強(qiáng),不僅僅是針對(duì)MySQL數(shù)據(jù)庫(kù),甚至將備份文件拿到其他關(guān)系型數(shù)據(jù)庫(kù)平臺(tái)上恢復(fù)
    MySQL原始的邏輯備份工具包括mysqldump,甚至 select into  outfile  也可以算在內(nèi)。這些工具可以支持所有的存儲(chǔ)引擎甚至Memory,這種存儲(chǔ)在內(nèi)存中的引擎
    恢復(fù)時(shí),備份的SQL文件,可以用mysql 命令導(dǎo)入,也可以在登錄mysql后使用source命令加載。對(duì)于部分定界文件可以使用 load  data  infile  或者mysqlimport導(dǎo)入。
   除了物理備份與邏輯備份,某些文件系統(tǒng)支持創(chuàng)建快照,但是MYSQL是通過(guò)第三方解決方案實(shí)現(xiàn),例如 VEritas LVM 或者ZFS等。

看了以上關(guān)于MySQL使用中如何備份與恢復(fù)數(shù)據(jù),希望能給大家在實(shí)際運(yùn)用中帶來(lái)一定的幫助。本文由于篇幅有限,難免會(huì)有不足和需要補(bǔ)充的地方,如有需要更加專(zhuān)業(yè)的解答,可在官網(wǎng)聯(lián)系我們的24小時(shí)售前售后,隨時(shí)幫您解答問(wèn)題的。

 

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI