MySQL常見備份與恢復方案
MySQL常見備份方案有以下三種:
mysqldump + binlog
lvm + binlog
xtrabackup
本例為方便演示,資料庫裡面資料為空。下面開始動手
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
|
1、利用mysqldump完全備份mysql,配合二進位制日誌備份實現增量備份
mysqldump 選項請參考http://wangweiak47.blog.51cto.com/2337362/1589304
1.1提供模擬資料
1 2 3 4 5 6 7 8 |
|
1.2全量備份:
1 |
|
1.3 模擬資料發生改變
1 2 |
|
1.4 增量備份
1 2 |
|
1.5 資料損壞
1 2 |
|
1.6 恢復
上面已經提供了步驟,直接複製過來使用。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
|
1.7小結,mysqldump適合於資料量較小的場合,它的優點是有眾多選項,使用起來非常靈活,缺點是資料量一旦過大,非常耗時耗力。
2、使用lvm進行全備。
lvm快照卷原理參考
http://baike.baidu.com/link?url=iEpO_zm_AbHbk-ijQa8jNcFRoPPG2NdTYb_cRoQ7mjQb_ag9g-fL7yHPXV7Atp2j3J0L5xYynM9KKLIwycW_S_
2.1 資料接著上次繼續開始。
2.2 全備。
需保證資料庫存放在邏輯卷組上面,才行。
2.2.1首先鎖表和滾動日誌
1 2 3 4 5 |
|
2.2.2建立快照
1 2 |
|
2.2.3 解鎖表
1 2 |
|
2.2.4 複製快照卷資料到備份目錄下
1 2 3 |
|
2.2.5 刪除快照
1 2 3 4 |
|
2.3增量備份,只需和定時複製binlog到備份目錄下面即可
2.4恢復,只需要直接拷貝備份目錄下的檔案即可
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
2.5小結:
lvm實現物理備份速度相對mysqldump來比較快,實現也比較簡單,是不錯的選擇。
缺點:資料目錄必須存放在lvm卷組上面
3、使用xtrabackup實現熱備。
請自行到官網下載並安裝對應的rpm包。
使用方法參考:詳細參考:
http://www.cnblogs.com/Amaranthus/archive/2014/08/19/3922570.html
3.1建立一個具有最小許可權的使用者
1 2 3 |
|
3.2完全熱備。
使用innobakupex備份時,其會呼叫xtrabackup備份所有的InnoDB表,複製所有關於表結構定義的相關檔案(.frm)、以及MyISAM、MERGE、CSV和ARCHIVE表的相關檔案,同時還會備份觸發器和資料庫配置資訊相關的檔案。這些檔案會被儲存至一個以時間命令的目錄中。
1 2 3 4 |
|
(1)xtrabackup_checkpoints —— 備份型別(如完全或增量)、備份狀態(如是否已經為prepared狀態)和LSN(日誌序列號)範圍資訊;
每個InnoDB頁(通常為16k大小)都會包含一個日誌序列號,即LSN。LSN是整個資料庫系統的系統版本號,每個頁面相關的LSN能夠表明此頁面最近是如何發生改變的。
(2)xtrabackup_binlog_info —— mysql伺服器當前正在使用的二進位制日誌檔案及至備份這一刻為止二進位制日誌事件的位置。
(3)xtrabackup_binlog_pos_innodb —— 二進位制日誌檔案及用於InnoDB或XtraDB表的二進位制日誌檔案的當前position。
(4)xtrabackup_binary —— 備份中用到的xtrabackup的可執行檔案;
(5)backup-my.cnf —— 備份命令用到的配置選項資訊;
3.3提供改變資料。
1 2 |
|
3.4增量備份
1 |
|
3.5 模擬資料損壞
1 2 |
|
3.6增量備份恢復
1 2 |
|
#注意,多例項的話,仍然需要備份配置檔案,啟動的時候需要binlog目錄。
1 2 3 4 |
|
3.6啟動資料庫檢視。
1 2 3 4 5 6 7 8 9 10 11 |
|
小結:
xtrabacup具有如下特點。
(1)備份過程快速、可靠;
(2)備份過程不會打斷正在執行的事務;
(3)能夠基於壓縮等功能節約磁碟空間和流量;
(4)自動實現備份檢驗;
(5)還原速度快;
因此建議學會熟練使用xtrabackup進行備份和還原。