什么是數據庫備份
RDS for PostgreSQL會在數(shu)(shu)據庫(ku)實例的(de)(de)備(bei)(bei)份時(shi)段中創(chuang)建數(shu)(shu)據庫(ku)實例的(de)(de)自(zi)動備(bei)(bei)份。系統根據您指定的(de)(de)備(bei)(bei)份保留期(1~732天)保存數(shu)(shu)據庫(ku)實例的(de)(de)自(zi)動備(bei)(bei)份。
每次備(bei)(bei)份(fen)完成(cheng)后都會生成(cheng)一個備(bei)(bei)份(fen)文(wen)件,當數(shu)(shu)據(ju)庫故障或(huo)數(shu)(shu)據(ju)損壞時,可以(yi)通過(guo)備(bei)(bei)份(fen)文(wen)件恢復數(shu)(shu)據(ju)庫,從而保證數(shu)(shu)據(ju)可靠性。
備份類型
RDS for MySQL包含多種備份類型,不同備份類型的概念介紹以及功能差異,請參見備份類型。
全量備(bei)份(fen):對所有(you)(you)目標數據進行備(bei)份(fen)。全量備(bei)份(fen)總是備(bei)份(fen)所有(you)(you)選擇的目標,即使從上次備(bei)份(fen)后數據沒有(you)(you)變(bian)化(hua)。
全量備份(fen)觸發方式(shi)分(fen)為:自動(dong)備份(fen)、手動(dong)備份(fen)。
增(zeng)量(liang)(liang)備(bei)(bei)(bei)份(fen):即Binlog備(bei)(bei)(bei)份(fen),RDS系統自動每5分鐘或一(yi)定(ding)數據(ju)量(liang)(liang)時對上一(yi)次全量(liang)(liang)備(bei)(bei)(bei)份(fen)或增(zeng)量(liang)(liang)備(bei)(bei)(bei)份(fen)后(hou)更(geng)新的數據(ju)進(jin)行備(bei)(bei)(bei)份(fen)。
備份觸發過程
單機實例
采(cai)用單個數據庫(ku)節點部署架構(gou)。與主流的主備實例相比,它只包含一個節點,但具有高性價比。備份(fen)觸(chu)發(fa)后,從主庫(ku)備份(fen)數據并以壓縮(suo)包的形(xing)式存(cun)儲在對(dui)象存(cun)儲服務上(shang),不會占(zhan)用實例的磁盤空間。
主備實例
采用一主(zhu)一備的(de)(de)經典高可用架構,主(zhu)備實例的(de)(de)每個節點的(de)(de)規格保持一致。備份(fen)觸(chu)發后,從備庫備份(fen)數據并以(yi)壓縮包的(de)(de)形式存儲在對象存儲服務(wu)上(當主(zhu)備復制延(yan)遲較高時會切換到(dao)主(zhu)機備份(fen)),不(bu)會占用實例的(de)(de)磁盤空間(jian)。
當(dang)數(shu)據(ju)庫或表被(bei)惡(e)意或誤刪除,雖然RDS支持(chi)主備高可(ke)用,但備機(ji)數(shu)據(ju)庫會被(bei)同步刪除且無(wu)法(fa)還(huan)原。因此,數(shu)據(ju)被(bei)刪除后(hou)只能(neng)依賴于實例的備份保障(zhang)數(shu)據(ju)安(an)全(quan)。
備份機制
RDS for PostgreSQL默認開啟自(zi)動(dong)(dong)備(bei)(bei)(bei)(bei)份(fen),且不支持(chi)關閉。RDS for PostgreSQL自(zi)動(dong)(dong)全(quan)(quan)(quan)備(bei)(bei)(bei)(bei)按照(zhao)備(bei)(bei)(bei)(bei)份(fen)策略中的備(bei)(bei)(bei)(bei)份(fen)時(shi)間(jian)段和(he)備(bei)(bei)(bei)(bei)份(fen)周期進(jin)(jin)行(xing)全(quan)(quan)(quan)量(liang)備(bei)(bei)(bei)(bei)份(fen)。Binlog備(bei)(bei)(bei)(bei)份(fen)為實例(li)每5分鐘或一(yi)定數(shu)據量(liang)時(shi)對上一(yi)次自(zi)動(dong)(dong)全(quan)(quan)(quan)備(bei)(bei)(bei)(bei),或Binlog備(bei)(bei)(bei)(bei)份(fen)后更(geng)新的數(shu)據會進(jin)(jin)行(xing)備(bei)(bei)(bei)(bei)份(fen),以保證數(shu)據庫可靠性(xing)。實例(li)恢(hui)復到(dao)指定時(shi)間(jian)點(dian),會從OBS備(bei)(bei)(bei)(bei)份(fen)空間(jian)中選(xuan)擇一(yi)個該時(shi)間(jian)點(dian)最近的全(quan)(quan)(quan)量(liang)備(bei)(bei)(bei)(bei)份(fen)下載到(dao)實例(li)上進(jin)(jin)行(xing)全(quan)(quan)(quan)量(liang)恢(hui)復,再重放Binlog備(bei)(bei)(bei)(bei)份(fen)到(dao)指定時(shi)間(jian)點(dian)。
圖 備份原理
備份清理
備(bei)份文件清(qing)理(li)分為兩種場景:手(shou)動(dong)備(bei)份清(qing)理(li)和自動(dong)備(bei)份清(qing)理(li)。
? 手動(dong)備份(fen)是由用(yong)戶(hu)觸(chu)發產生的全(quan)量備份(fen),需要用(yong)戶(hu)手動(dong)刪除,否則(ze)會一(yi)直保存。
? 自動備份的備份文件不支持手動刪除,可通過設置自動備份策略調整備(bei)份(fen)保(bao)留(liu)天(tian)數,超出備(bei)份(fen)保(bao)留(liu)天(tian)數的已有備(bei)份(fen)文件(jian)會被自動(dong)刪除(chu)。