1. 程式人生 > 其它 >MySQL的備份與恢復

MySQL的備份與恢復

MySQL日誌管理

MySQL的日誌預設儲存位置為/usr/local/mysql/data

MySQL備份

資料庫備份的分類

從物理與邏輯的角度,備份可以分為

(1)物理備份:

對資料庫作業系統的物理檔案(如資料檔案、日誌檔案等)的備份

物理備份的方法:

  • 冷備份(離線備份):是在關閉資料庫的時候進行的
  • 熱備份(聯機備份):資料庫處於執行狀態,依賴於資料庫的日誌檔案
  • 溫備份:資料庫鎖定表格(不可寫入但可讀)的狀態下進行備份操作

(2)邏輯備份:

對資料邏輯元件(如:表等資料庫物件)的備份

從資料庫的備份策略角度,備份可分為

  • 完全備份:每次對資料庫進行完整的備份
  • 差異備份:備份自從上次完全備份之後被修改過的檔案
  • 增量備份:只有在上次完全備份或者增量備份後被修改的檔案才會被備份

完全備份:

優點:

  • 備份與恢復操作簡單方便

缺點:

  • 資料存在大量的重複
  • 佔用大量的備份空間
  • 備份與恢復時間長

物理冷備份與恢復

  • 關閉MySQL資料庫
  • 使用tar命令直接打包資料庫資料夾
  • 直接替換現有MySQL目錄即可

mysqldump備份與恢復

  • MySQL自帶的備份工具,方便實現對MySQL的備份
  • 可以將指定的庫、表匯出為SQL指令碼
  • 使用命令mysql匯入備份的資料

MySQL完全備份

InnoDB儲存引擎的資料庫在磁碟上儲存成三個檔案:db.opt(表屬性檔案)、表名.frm(表結構檔案)、表名.ibd(表資料檔案)

1、物理冷備份與恢復

###壓縮備份

##解壓恢復

2、mysqldump備份與恢復

(1)完全備份一個或多個完整的庫(包括其中所有的表)

(2)完全備份MySQL伺服器中所有的庫

(3)完全備份指定庫中的部分表

(4)檢視備份檔案

MySQL完全恢復

1、恢復資料庫

2、恢復資料表

MySQL增量備份與恢復

1、開啟二進位制日誌功能

###二進位制日誌(binlog)有三種不同的記錄格式:STATEMENT(基於SQl語句)、ROW(基於行)、MIXED(混合模式),預設格式是STATEMENT

2、可每週對資料庫或表進行完全備份

3、可每天進行增量備份操作,生成新的二進位制日誌檔案

4、插入新的資料,模擬資料的增加或變更

5、檢視二進位制日誌檔案的內容

MySQL增量恢復

1、一般恢復

(1)模擬丟失資料的恢復