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

MySQL 數據導入恢復教程:LOAD DATA INFILE 與 mysqlimport 實戰詳解

     編輯:MySQL 資料庫相關知識

方法一:LOAD DATA INFILE(SQL 級)

LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;

關鍵選項

  • LOCAL:從客戶端讀取文件;無 LOCAL 則從伺服器端讀取(需 FILE 權限)
  • FIELDS TERMINATED BY ',':欄位分隔符
  • ENCLOSED BY '"':引用字符
  • LINES TERMINATED BY '\r\n':行結束符
  • IGNORE 1 LINES:跳過標題行

指定欄位映射

LOAD DATA LOCAL INFILE 'dump.txt'
INTO TABLE mytbl (col_b, col_c, col_a);  -- 文件列順序 b,c,a 對應表列 a,b,c

方法二:mysqlimport(命令行工具,LOAD DATA 封裝)

mysqlimport -u root -p --local db_name dump.txt

對應選項對照

特殊字符處理

  • 預設轉義字符:\(反斜線)
  • 自訂轉義:ESCAPED BY '\\\\' / --fields-escaped-by=\\\\
  • 含引號數據:確保 ENCLOSED BY 與數據一致

效能建議

  1. 大量導入前:SET autocommit=0; SET unique_checks=0; SET foreign_key_checks=0;
  2. 導入後:恢復檢查、提交事務
  3. 配合 LOAD DATA 並行導入多張表
  4. 文件預排序主鍵順序,減少頁分裂
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
LOAD DATAmysqlimport
FIELDS TERMINATED BY--fields-terminated-by=
ENCLOSED BY--fields-enclosed-by=
LINES TERMINATED BY--lines-terminated-by=
(col_list)--columns=col_b,col_c,col_a