萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

Windows/Linux 命令列匯入匯出 MySQL 資料庫完整操作手冊

進入命令列環境

  • Windows:Win+R → cmd → 進入 MySQL bin 目錄(如 cd C:\Program Files\MySQL\MySQL Server 8.0\bin)。
  • Linux:直接終端機,mysql/mysqldump 通常已在 PATH 中。

匯出

1. 匯出整個資料庫(結構+資料)

mysqldump -u username -p db_name > backup.sql
# 範例
mysqldump -u root -p mydb > mydb_20240115.sql

2. 匯出單一/多張表

# 單表
mysqldump -u root -p db_name table_name > table.sql
# 多表(空格分隔)
mysqldump -u root -p db_name table1 table2 table3 > tables.sql

3. 僅匯出結構(無資料)

mysqldump -u root -p -d --add-drop-table db_name > structure.sql
# -d / --no-data:不含資料
# --add-drop-table:建表前先 DROP,利於覆蓋匯入

4. 僅匯出資料(無結構)

mysqldump -u root -p -t db_name table_name > data_only.sql
# -t / --no-create-info

5. 遠端資料庫匯出

mysqldump -h 192.168.1.100 -u root -p db_name > remote_backup.sql

6. 壓縮匯出(節省空間與傳輸時間)

mysqldump -u root -p db_name | gzip > db_name.sql.gz
# 解壓:gunzip -c db_name.sql.gz | mysql -u root -p db_name

匯入

方法一:mysql 客戶端管線導入(推薦,大檔案穩定)

mysql -u root -p db_name < backup.sql
# 指定編碼防亂碼
mysql -u root -p --default-character-set=utf8mb4 db_name < backup.sql

方法二:SOURCE 指令(需先進入 mysql 互動模式)

mysql -u root -p
mysql> USE db_name;
mysql> SOURCE /full/path/to/backup.sql;

⚠️ 路徑需用正斜線 / 或雙反斜線 \\,Windows 下建議用絕對路徑。

方法三:壓縮檔直接管線導入

gunzip -c backup.sql.gz | mysql -u root -p db_name

進階參數速查表

參數說明
--single-transactionInnoDB 熱備份必加,取得一致性快照不鎖表
--master-data=2備份檔含 CHANGE MASTER TO 註解,利於搭建從庫
--routines包含存儲過程/函數/觸發器
--triggers包含觸發器(預設開啟)
--hex-blob二進位欄位用十六進位導出,避免編碼問題
--quick大表導出不緩存全表結果,直接串流寫檔
--lock-tables=false避免鎖表(需配合 --single-transaction)

自動化備份腳本範例

#!/bin/bash
# /usr/local/bin/backup_mysql.sh
DATE=$(date +%F_%H-%M)
DB="mydb"
USER="backup_user"
PASS="xxxx"
DIR="/backup/mysql"
mkdir -p $DIR
mysqldump -u$USER -p$PASS --single-transaction --routines --triggers --hex-blob $DB | gzip > $DIR/${DB}_${DATE}.sql.gz
# 保留 30 天
find $DIR -name "*.gz" -mtime +30 -delete

加入 crontab -e:0 2 * * * /usr/local/bin/backup_mysql.sh 每日 02:00 自動備份。

總結

命令列 mysqldump + mysql 是最通用、效能最好、自動化友善的備份還原組合。掌握核心參數與管線操作,即可應對從開發環境到生產環境的各種遷移、備份、災難恢復場景。

copyright © 萬盛學電腦網 all rights reserved