資料備份可分為:熱備份、冷備份和溫備份。熱備份可以在資料庫運行中直接備份,對正在運行的資料庫操作沒有任何的影響。冷備份必須在資料庫停止的情況下進行備份,資料庫的讀寫作業不能執行。溫備份在資料庫運作中進行,備份時僅支援讀取操作,不支援寫入操作。
本教學操作環境:Windows7系統、Dell G3電腦。
推薦教學:mysql影片教學
備份是以防萬一的必要手段,在出現硬體損壞或非人為的因素而導致資料遺失時,可以使用備份恢復數據,以將損失降低到最小程度,因此備份是必須的。備份可以分為以下幾種類型。
根據備份的方法(是否需要資料庫離線)可以將備份分為:
熱備(Hot Backup)
冷備(Cold Backup)
溫備(Warm Backup)
熱備份可以在資料庫運行中直接備份,對正在運行的資料庫操作沒有任何的影響,資料庫的讀寫操作可以正常執行。這種方式在 MySQL 官方手冊中稱為 Online Backup(線上備份)。
冷備份必須在資料庫停止的情況下進行備份,資料庫的讀寫作業不能執行。這種備份最為簡單,一般只需要複製相關的資料庫實體檔案即可。這種方式在 MySQL 官方手冊中稱為 Offline Backup(離線備份)。
溫備份同樣是在資料庫運作中進行的,但是會對目前資料庫的操作有所影響,備份時僅支援讀取操作,不支援寫入作業。
依照備份後檔案的內容,熱備份又可以分成:
邏輯備份
裸檔備份
在MySQL 資料庫中,邏輯備份是指備份出的檔案內容是可讀的,一般是文字內容。內容一般是由一條條 SQL 語句,或是表內實際資料所組成。如 mysqldump 和 SELECT * INTO OUTFILE 的方法。這類方法的好處是可以觀察導出檔案的內容,一般適用於資料庫的升級、遷移等工作。但其缺點是恢復的時間較長。
裸文件備份是指複製資料庫的實體文件,既可以在資料庫運行中進行複製(如 ibbackup、xtrabackup 這類工具),也可以在資料庫停止運行時直接複製資料檔。這類備份的復原時間往往比邏輯備份短很多。
依照備份資料庫的內容來分,備份又可以分為:
#完全備份
部分備份
完全備份是指對資料庫進行一個完整的備份,也就是備份整個資料庫,如果資料較多會佔用較大的時間和空間。
部分備份是指備份部分資料庫(例如,只備份一個表)。
部分備份又分為:
增量備份
#差異備份
增量備份需要使用專業的備份工具。指的是在上次完全備份的基礎上,對更改的資料進行備份。也就是說每次備份只會備份自上次備份之後到備份時間內產生的資料。因此每次備份都比差異備份節約空間,但恢復資料麻煩。
差異備份指的是自上一次完全備份以來變更的資料。和增量備份相比,浪費空間,但恢復資料比增量備份簡單。
MySQL 中進行不同方式的備份還要考慮儲存引擎是否支持,如 MyISAM 不支援熱備,支援溫備和冷備。而 InnoDB 支援熱備、溫備和冷備。
一般情況下,我們需要備份的資料分為以下幾種:
表資料
二進位日誌、 InnoDB 交易日誌
程式碼(預存程序、儲存函數、觸發器、事件排程器)
伺服器設定檔
想要查閱更多相關文章,請造訪PHP中文網! !
以上是資料備份可分為哪些類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!