1. 程式人生 > >mysql:數據庫備份方案

mysql:數據庫備份方案

dir 能夠 調研 rect 而是 兩個 如何 == 刪庫

1. 數據庫備份方案

1)沒備份,跑路~

2)全量備份+增量備份

如果不小心“刪庫”,可以這麽恢復:

a. 將最近一次全量備份的全庫找到,拷貝回來(文件一般比較大),解壓,應用;

b. 將最近一次全量備份後,每一天的增量binlog找到,拷貝回來(文件較多),依次重放;

c. 將最近一次增量備份後,到執行“刪全庫”之前的binlog找到,重放;

恢復完畢。

全量備份+增量備份的恢復周期也非常長,可能是天級別。

3) 1小時延時從庫

a. 什麽是1小時延時從庫?

增加一個從庫,這個從庫不是實時與主庫保持同步的,而是每隔1個小時同步一次主庫,同步完之後立馬斷開1小時,這個從庫會與主庫保持1個小時的數據差距。

b. 當“刪全庫”事故發生時,如何利用“1小時延時從庫”快速恢復數據?

b1. 應用1小時延時從;

b2. 將1小時延時從最近一次同步時間到,執行“刪全庫”之前的binlog找到,重放

快速恢復完畢。

4)雙份1小時延時從庫

a. 什麽是雙份1小時延時從?

兩個1小時延時從庫,它們連主庫同步數據的時間“岔開半小時”。

這個方案的優點是,沒有萬一,一定能快速恢復數據。潛在的不足是,資源利用率有點低,為了保證數據的安全性,多了2臺延時從,降低了從庫利用率。

b. 如何提高從庫利用效率?

對於一些“允許延時”的業務,可以使用1小時延時從,例如:

(1)運營後臺,產品後臺;

(2)BI進行數據同步;

(3)研發進行數據抽樣,調研;

但需要註意的是,畢竟這是從庫,只能夠提供“只讀”服務喲

參見:db如何快速回滾+恢復,DBA的神技能

mysql:數據庫備份方案