1. 程式人生 > 其它 >mysql匯入資料load data infile

mysql匯入資料load data infile

注意:

1)“load data infile” 和“into outfile” 預設只能和伺服器本地的磁碟互動,需要先把txt檔案上傳到伺服器上,然後執行load data infile命令。如果需要遠端異地操作,需要特殊配置,本篇不做介紹。

2)需要確認檔案的換行是什麼,目前是'\n'。但也有可能會是'\r\n'

3)注意資料庫伺服器,MySQL對檔案目錄的限制:show variables like "secure_file_priv"

secure_file_priv值 含義
NULL 不允許匯入匯出(infile、outfile)
""(空字串or空白) 不限制目錄,可以再伺服器的任何目錄
path(具體的一個伺服器的目錄) 只能在改目錄進行匯入匯出

另外注意,該值只能通過mysql的配置檔案修改重啟服務生效,無法通過set global之類的命令生效。

windows

--fields escaped by '' 不區分轉義字元

-- lines terminated by '\n'

load data infile 'D:\filename.txt' into table db_name.table_name fields escaped by '' lines terminated by '\n';

linux

load data infile '/data/filename.txt' into table db_name.table_name fields escaped by '' lines terminated by '\n';