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

MySQL 數據庫導入導出完整實戰:mysqldump 與 source 命令詳解

     編輯:MySQL 綜合教學

MySQL 備份還原核心工具鏈

mysqldump 導出、source 導入是最基礎也最常用的組合,掌握參數細節能大幅提升運維效率。

一、導出常用場景

需求命令範例關鍵參數說明
整庫導出(結構+數據)mysqldump -u user -p dbname > db.sql無特殊參數,預設含 CREATE TABLE 與 INSERT
單表導出mysqldump -u user -p dbname tbl > tbl.sql表名放在資料庫名之後
僅導出結構(無數據)mysqldump -u user -p -d --add-drop-table dbname > schema.sql-d 無數據;--add-drop-table 重建前先 DROP
僅導出數據(無結構)mysqldump -u user -p -t dbname > data.sql-t 不含 CREATE TABLE
遠程導出並壓縮mysqldump -h host -u user -p dbname | gzip > db.sql.gz管道配合 gzip 節省頻寬與磁碟

二、導入實操

# 進入 MySQL 客戶端
mysql -u root -p

# 選擇目標資料庫
mysql> USE target_db;

# 執行導入
mysql> SOURCE /path/to/db.sql;

或直接在 Shell 執行:

mysql -u root -p target_db < /path/to/db.sql

三、大數據量優化技巧

  • 導出時加 --quick --single-transaction(InnoDB)避免鎖表與記憶體暴漲。
  • 導入前關閉索引、外鍵檢查、唯一性檢查:
    SET FOREIGN_KEY_CHECKS=0; SET UNIQUE_CHECKS=0; SET AUTOCOMMIT=0;
    導入後恢復並 COMMIT;。
  • 分庫分表導出:mysqldump --databases db1 db2 ... 或單表循環導出再並行導入。

四、圖形化替代工具

MySQL Workbench、Navicat、DataGrip 等 GUI 工具提供可視化備份/還原向導,適合不熟悉命令列的開發人員。

mysqldump 導出示意

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved