1. 程式人生 > 資料庫 >Linux MySQL 資料備份的型別、方式以及方法 解析

Linux MySQL 資料備份的型別、方式以及方法 解析

文章目錄

資料備份的型別、方式以及方法

備份的作用

  • 備份:能夠防止由於機器故障以及人為誤操作帶來的資料丟失,例如將資料庫檔案儲存在了其它地方。
  • 冗餘: 資料有多份冗餘,但不等備份,只能防止機器故障帶來的資料丟失,例如主從模式、資料庫叢集。

MySQL資料備份需要重視的內容

  • 備份內容 databases Binlog my.cnf
  • 所有備份資料都應放在非資料庫本地,而且建議有多份副本。
  • 測試環境中做日常恢復演練,恢復較備份更為重要。

備份過程中必須考慮的因素

  • 資料的一致性
  • 服務的可用性

MySQL 備份型別

物理備份

直接複製資料庫檔案,適用於大型資料庫環境,不受儲存引擎的限制,但不能恢復到不同的MySQL版本。

1,熱備(hot backup)

線上備份,資料庫處於執行狀態,這種備份方法依賴於資料庫的日誌檔案

  • 對應用基本無影響(但是效能還是會有下降,所以儘量不要在主上做備份,在從庫上做)

2,冷備(cold backup)

備份資料檔案,需要停機,是在關閉資料庫的時候進行的

  • 備份 datadir 目錄下的所有檔案

3,溫備(warm backup)

  • 針對myisam的備份(myisam不支援熱備),備份時候例項只讀不可寫,資料庫鎖定表格(不可寫入但可讀)的狀態下進行的
  • 對應用影響很大
  • 通常加一個讀鎖

邏輯備份

備份的是建表、建庫、插入等操作所執行SQL語句(DDL DML DCL)

  • 適用於中小型資料庫,效率相對較低。

物理和邏輯備份的區別

|            | 邏輯備份                           | 物理備份                 
| ---------- | --------------------------------  | ----------------------
| 備份方式    | 備份資料庫建表、建庫、插入sql語句      | 備份資料庫物理檔案           
| 優點       | 備份檔案相對較小,只備份表中的資料與結構 | 恢復速度比較快
| 缺點       | 恢復速度較慢(需要重建索引,儲存過程等)   | 備份檔案相對較大(備份表空間,包含資料與索引)
| 對業務影響  | I/O負載加大                         | I/O負載加大                   
| 代表工具    | mysqldump                          | ibbackup、xtrabackup、mysqlbackup     

MySQL 備份工具

1,ibbackup

  • 官方備份工具
  • 收費
  • 物理備份

2,xtrabackup

  • 開源社群備份工具
  • 開源免費,上面的免費版本(老版本有問題,備份出來的資料可能有問題)
  • 物理備份

3,mysqldump

  • 官方自帶備份工具 開源免費
  • 邏輯備份(速度慢)

4,mysqlbackup

  • mysql 官方備份工具
  • innodb 引擎的表mysqlbackup可以進行熱備
  • 非innodb表mysqlbackup就只能溫備
  • 物理備份,備份還原速度快
  • 適合大規模資料使用

物理備份的方式

1,完全備份

完整備份

每次對資料進行完整的備份,即對整個資料庫的備份、資料庫結構和檔案結構的備份,儲存的是備份完成時刻的資料庫,是差異備份與增量備份的基礎。

  • 優點:備份與恢復操作簡單方便,恢復時一次 恢復到位,恢復速度快
  • 缺點:佔用空間大,備份速度慢

2,增量備份

每次備份上一次備份到現在產生的新資料

只有那些在上次完全備份或者增量備份後被修改的資料才會被備份。以上次完整備份或上次的增量備份的時間為時間點,僅備份這之間的資料變化.

  • 特點:因而備份的資料量小,佔用空間小,備份速度快。但恢復時,需要從上一次的完整備份起按備份時間順序,逐個備份版本進行恢復,恢復時間長,如中間某次的備份資料損壞,將導致資料的丟失。

3,差異備份

只備份跟完整備份不一樣的

備份那些自從第一次次完全備份之後被修改過的所有檔案,備份的時間起點是從第一次次完整備份起,且以後每次備份都是和第一次完整備份進行比較(注意是第一次,不是上一次),備份自第一次完整備份以來所有的修改過的檔案。備份資料量會越來越大。

  • 特點:佔用空間比增量備份大,比完整備份小,恢復時僅需要恢復第一個完整版本和最後一次的差異版本,恢復速度介於完整備份和增量備份之間。

4,三種備份的差異

  • 簡單的講,完整備份就是不管三七二十一,每次都把指定的備份目錄完整的複製一遍,不管目錄下的檔案有沒有變化;
  • 增量備份就是每次將之前(第一次、第二次、直到前一次)做過備份之後有變化的檔案進行備份;
  • 差異備份就是每次都將第一次完整備份以來有變化的檔案進行備份。