首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 資料庫備份與恢復實務操作指南

     編輯:MySQL 資料庫相關知識

一、mysqldump 邏輯備份

基本語法

mysqldump 資料庫名稱 [表名1 表名2 ...] > 備份檔.sql

常見範例

  • 備份整個資料庫 cm2:
    mysqldump cm2 > cm2.sql
  • 僅備份 cm2 中的 mail、user 兩張表:
    mysqldump cm2 mail user > cm2_mail_user.sql

關鍵參數說明

參數用途
--databases指定後續皆為資料庫名稱,適合一次備份多個資料庫;輸出檔會自動包含 CREATE DATABASE IF NOT EXISTS 與 USE 語句。
--all-databases備份所有資料庫所有表至單一檔案,同樣包含建庫語句。

預設不加 --databases 時,輸出檔不含建庫語句,還原前必須手動建立目標資料庫。

二、還原操作

基本語法

mysql 資料庫名稱 < 備份檔.sql

場景差異

  • 備份時未加 --databases:還原必須指定已存在的目標資料庫,如 mysql cm2 < cm2.sql。
  • 備份時已加 --databases:還原可不指定資料庫,甚至目標資料庫不存在也會自動建立,如 mysql < cm2.sql。

建議常態備份加上 --databases,提升還原彈性。

三、跨主機直接複製資料庫/表

mysqldump 資料庫名稱 [表名] | mysql -h 目標主機 目標資料庫

前提:目標資料庫必須已存在。此法適合遷移或同步資料至另一台伺服器。

四、實務小撇步

  • 大型資料庫建議搭配 gzip 壓縮:mysqldump db | gzip > db.sql.gz
  • 定期備份可寫入 Shell 腳本並配合 crontab 自動化。
  • 還原前先驗證備份檔完整性(如 head -n 20 備份檔.sql 確認結構)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved