首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 冷備份實戰:停機拷貝、壓縮、恢復全流程演練

     編輯:MySQL 綜合教學

MySQL 冷備份實戰:停機拷貝、壓縮、恢復全流程演練

冷備份(Cold Backup)即停止數據庫服務後,直接拷貝/打包數據目錄的物理文件。原理簡單、恢復快、邏輯無損,但需停機、佔用空間大、不適合大數據量 7×24 業務。本文通過完整實驗演示冷備份全流程。

實驗環境

  • OS:Linux (RedHat/CentOS)
  • MySQL:5.5.29-log,數據目錄 /usr/local/mysql/data
  • 備份目標目錄:/databackup

完整操作步驟

第一步:創建測試數據

mysql> USE larrydb;
mysql> CREATE TABLE class (cid INT, cname VARCHAR(30)) ENGINE=InnoDB;
mysql> CREATE TABLE stu (sid INT, sname VARCHAR(30), cid INT) ENGINE=MyISAM;
mysql> INSERT INTO class VALUES (1,'linux'),(2,'oracle');
mysql> INSERT INTO stu VALUES (1,'larry01',1),(2,'larry02',2);

第二步:停止 MySQL 服務

[root@serv01 ~]# /etc/init.d/mysqld stop
Shutting down MySQL... SUCCESS!

必須確保服務完全停止,否則文件處於寫入狀態導致備份不一致。

第三步:準備備份目錄與權限

[root@serv01 ~]# mkdir /databackup
[root@serv01 ~]# chown mysql:mysql /databackup -R

第四步:冷備份(打包壓縮)

[root@serv01 databackup]# tar -cvPzf mysql01.tar.gz /usr/local/mysql/data
# -c 創建 -v 顯示過程 -P 保留絕對路徑 -z gzip壓縮 -f 指定文件名

第五步:模擬災難(刪除數據目錄)

[root@serv01 databackup]# rm -rf /usr/local/mysql/data/*

第六步:驗證災難狀態(啟動失敗)

[root@serv01 databackup]# /etc/init.d/mysqld start
Starting MySQL.. ERROR! The server quit without updating PID file...

無數據目錄無法啟動,符合預期。

第七步:恢復數據(解壓還原)

[root@serv01 databackup]# tar -xvPf mysql01.tar.gz
# -x 解壓 -v 顯示 -P 保留絕對路徑 -f 指定文件

第八步:啟動驗證

[root@serv01 databackup]# /etc/init.d/mysqld start
Starting MySQL.. SUCCESS!
[root@serv01 ~]# mysql -e "USE larrydb; SELECT * FROM class; SELECT * FROM stu;"
+------+--------+  +------+---------+------+
| cid | cname |  | sid | sname   | cid |
+------+--------+  +------+---------+------+
| 1    | linux  |  | 1   | larry01 | 1   |
| 2    | oracle |  | 2   | larry02 | 2   |
+------+--------+  +------+---------+------+

數據完整恢復,冷備份演練成功。

冷備份關鍵要點總結

維度說明
前提條件必須停止 MySQL 服務(service mysqld stop)
備份對象整個 datadir 目錄(含 .frm/.ibd/.MYD/.MYI/ibdata1/redo log 等)
工具選擇tar/cp/rsync + 壓縮(gzip/xz),或快照(LVM/AWS EBS)
恢復速度極快(僅解壓/拷貝,無重放邏輯日志)
一致性物理級完全一致(停機狀態下)
缺點需停機、空間佔用大、無增量備份能力、跨版本/架構遷移受限

生產環境建議

  • 僅適用於小數據量、可接受停機窗口、非核心業務場景。
  • 大數據量核心業務請使用:熱備份(Percona XtraBackup/MySQL Enterprise Backup)、邏輯備份(mysqldump/mydumper)、複製集延遲節點備份、云盤快照等方案。
  • 定期演練恢復流程,「備份未驗證等於無備份」。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved