再生產環境中,為了防止硬體故障、軟體故障、自然災害、誤操作等各種原因導致的資料庫資料丟失後能恢復到事故之前的狀態,我們需要對資料庫進行備份和恢復操作。資料庫的備份和恢復是非常重要的工作,資料的備份不是最終目的,資料的恢復才是。
備份時應該注意的事項:
1.最多能容忍多少資料丟失;
2.恢復資料需要在多長時間內完成;
3.需要恢復那些資料;
4.定期測試備份的可用性並提高恢復操作的效率;
5.備份時的伺服器負載;
6.鎖定資源的時長;
a.按照備份的資料集的範圍分類:
完全備份:整個資料集;
部分備份:資料集的一部分,比如部分表;
b.按照資料的變化分類;
完全備份:將整個範圍備份;
c.按照操作物件分類;
物理備份:直接從磁碟複製資料檔案進行備份;
邏輯備份:從資料庫匯出資料另存在乙個或多個檔案中,將資料轉為具體的sql語句;
d.按照資料服務備份時的執行狀態分類;
熱備:讀寫操作均可進行的狀態下所做的備份;
溫備:可讀但不可寫狀態下進行的備份;
冷備:讀寫操作均不可進行的狀態下所做的備份;
備份策略一般都是全量+差異+binlogs或者全量+增量+binlogs。需要注意到的是,如果需要更完整的備份資料,還需要依靠binlogs(二進位制日誌)。binlogs是mysql中最重要的日誌之一,它記錄了所有的ddl和dml(除了資料查詢語句)語句,以事件形式記錄。這裡強烈建議在生產環境中,將資料與二進位制日誌分開存放並對二進位制日誌也做備份。
1.mysqldump:mysql服務自帶的備份工具。mysqldump是乙個邏輯備份工具,它的本質是將資料庫轉為可執行sql指令碼。可以用來做完全備份和部分備份,支援innodb儲存引擎的熱備功能,myisam儲存引擎的溫備功能。
2.系統自帶的cp/tar工具:這是一種物理備份,這種備份的原理是基於快照實現的,快照(請求乙個全域性鎖),之後立即釋放鎖,達到幾乎熱備的效果。需要注意的是不能僅僅只備份資料,要同時備份事務日誌,並且要求資料和日誌在同一邏輯卷。
3.xtrabackup:由percona開發的很強大的開源工具,支援對innodb做熱備,物理備份工具。
MySQL的備份方式
資料庫的備份是極其重要的事情。如果沒有備份,遇到下列情況就會抓狂 update or delete whitout where table was dropped accidentally innodb was corrupt entire datacenter loses power 從資料安全的...
mysql 備份與恢復 MySQL 備份與恢復
1 檢視資料庫的資料儲存在哪個目錄下 shiyanlou mysql uroot e show variables like datadir variable name value datadir var lib mysql 2 備份資料的方法 select into outfile 檔名 或者 s...
mysql 備份與恢復 Mysql 備份與恢復
資料檔案一致性處理 在完全備份的情況下,檔案不是時間點一致的,因為進行快照的時間點不一樣。如果嘗 試在未prepare資料的情況下還原資料庫,雖然操作上支援恢復,但是在啟動的時候仍會 進行資料recovery。執行帶 prepare 選項的 mariabackup 命令會使資料檔案進行統一,達到資料...