Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Linux 服務器 MySQL 數據庫導出導入實戰指南

編輯:Linux 系統常見問題解答

導出方案

方法一:mysqldump 命令行 (推薦大數據庫)


# 基本導出
/usr/local/mysql/bin/mysqldump -u root -p db_name > db_name_$(date +%F).sql

# 壓縮導出 (節省空間)
mysqldump -u root -p db_name | gzip > db_name_$(date +%F).sql.gz

# 導出多個庫
mysqldump -u root -p --databases db1 db2 > multi_db.sql

# 導出全部庫 (含用戶權限)
mysqldump -u root -p --all-databases > all_db.sql

關鍵參數:--single-transaction (InnoDB 熱備份不鎖表)、--master-data=2 (記錄 binlog 位置用於主從)、--routines --triggers --events (導出存儲過程/觸發器/事件)。

方法二:phpMyAdmin Web 界面

  • 適用中小數據庫 (<50MB)。
  • 導出:選庫 → 導出 → 選擇「快速」/「自定義」 → 執行 → 下載 SQL/GZIP/ZIP。
  • 導入:選庫 → 導入 → 選擇文件 → 執行。
  • 注意:PHP upload_max_filesize、post_max_size、max_execution_time 限制大文件。

方法三:第三方工具 (帝國備份王、Percona XtraBackup)

  • XtraBackup:物理熱備份,不鎖表,支持增量、流式傳輸、壓縮,大數據庫生產環境首選。
  • 安裝:yum install percona-xtrabackup-80 (匹配 MySQL 版本)。
  • 備份:xtrabackup --backup --target-dir=/backup/full --user=root --password=xxx。
  • 準備:xtrabackup --prepare --target-dir=/backup/full。
  • 恢復:停庫 → 清空 datadir → xtrabackup --copy-back --target-dir=/backup/full → 修正權限 → 啟庫。

導入方案

方法一:mysql 命令行


# 1. 創建目標庫 (如不存在)
mysql -u root -p -e "CREATE DATABASE db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;"

# 2. 導入 SQL 文件
mysql -u root -p db_name < db_name.sql

# 3. 導入壓縮文件
zcat db_name.sql.gz | mysql -u root -p db_name

方法二:phpMyAdmin

  • 上傳文件至 /home/wwwroot/phpmyadmin/upload/ (或直接選擇本地文件)。
  • 選擇目標庫 → 導入 → 執行。

大數據庫優化建議

問題優化措施
導出耗時長、鎖表影響業務InnoDB 必加 --single-transaction;考慮從庫備份
導入極慢臨時關閉索引 ALTER TABLE t DISABLE KEYS (MyISAM) / 導入後重建;調大 innodb_buffer_pool_size、innodb_log_file_size、innodb_flush_log_at_trx_commit=2 (臨時)
文件過大無法上傳/下載分卷壓縮 split -b 1G;或用 XtraBackup 物理備份
字符集亂碼導出導入指定 --default-character-set=utf8mb4,庫表創建同字符集

權限與安全

  • 優先使用 root 或擁有 LOCK TABLES, SELECT, SHOW VIEW, EVENT, TRIGGER, PROCESS 權限的專用備份賬號。
  • 密碼避免明文出現在命令行 (進程列表可見) → 使用 --defaults-extra-file=/path/.my.cnf 配置文件。
Copyright © Windows教程網 All Rights Reserved