本文目錄一覽:
- 1、如何將一張500M的csv格式的表格快速導入到mysql中
- 2、如何把csv文件批量導入到mysql資料庫
- 3、如何將.csv文件導入MySql資料庫中
- 4、幾個CSV大文件如何導入mysql資料庫,並更新替換對應數據?
- 5、如何把csv文件導入mysql
如何將一張500M的csv格式的表格快速導入到mysql中
由於工作需要,經常需要將mysql資料庫中的數據導出到excel表格,或者需要將excel表格數據導入到mysql資料庫,我的方法是先將它們都轉換成一種中間數據格式csv(execl數據可以直接導出為csv格式,csv格式也可以直接用excel打開)。下面介紹一下操作步驟:
csv導入mysql
load
data
infile
‘c:\\users\\username\\desktop\\test.csv’
into
table
`table`
fields
terminated
by
‘,’
optionally
enclosed
by
‘”‘
escaped
by
‘”‘
lines
terminated
by
‘\n’;
mysql導入csv
select
*
from
`table`
load
data
infile
‘c:\\users\\username\\desktop\\test.csv’
fields
terminated
by
‘,’
optionally
enclosed
by
‘”‘
escaped
by
‘”‘
lines
terminated
by
‘\n’;
如果亂碼,可用相關編輯器打開.csv文件,另存為utf-8的csv
如何把csv文件批量導入到mysql資料庫
通過命令行導入(要求列與列之間以 英文逗號 分割,若欄位中含有 , 則以 ” 包裹)
load data infile ‘D:/mysql-5.7.29-winx64/files/ratings_5.csv’ into table ratings fields terminated by ‘,’ optionally enclosed by ‘”‘ escaped by ‘”‘ lines terminated by ‘\r\n’;
踩坑一:文件路徑用 \ 分割會報錯,用 / 可(用 \\ 應該也可)
踩坑二:load data 命令報錯
ERROR 1290 (HY000): The MySQL server is running with the –secure-file-priv option so it cannot execute this statement
在 my.ini 中加入(空字元串代表允許從一切目錄導入)
[mysqld]
secure-file-priv=”
然後再 Windows 的服務中重新啟動 mysql
踩坑三:csv 文件中第一行是諸如 userId 這樣的列名
如果你的 csv 文件不大,直接使用 notepad++ 打開後刪除第一行即可
但在我們這裡,千萬級別的文件 notepad++ 無法打開,這時可以考慮兩種方法
1. 將 csv 文件傳入 Linux 伺服器刪去第一行
由於不知道如何在 Win 10 中做這個操作,只能通過 Linux 中轉執行
sed -i ‘1d’ ratings.csv
檢驗是否成功,可以列印出第一行觀察
cat ratings.csv | head -n 1
2. 通過工具把大的 csv 分成多個 notepad 能夠打開的較小文件,對第一個文件刪除第一行並依次導入
工具:splitcsv
親測 5000000 條數據的 csv 文件可以在 notepad++ 中打開(只能同時打開 3 個)
這個工具還有個小坑:ratings_0.csv 的最後一行和 ratings_1.csv 的第一行是重複的,請手動刪除
如何將.csv文件導入MySql資料庫中
1、LOAD DATA通過讀取本地文件系統上的文件,可以將大量數據添加到資料庫中。
mysql USE db1;
mysql LOAD DATA INFILE 『datafile.txt』 INTO TABLE db2.table_name;
2、mysqlimport命令直接從文件讀取批量數據。它相當於LOAD DATA語句的一個介面。
mysqlimport根據文件名導入表名,即將文件名第一個圓點前的所有字元作為表名。例如,文件class.txt被裝入class表中。
mysqlimport -L -uroot -proot db01 table_name.txt;
3、假如你原來表為T1表,數據導入到了T2表。可以用
insert into T1 select * from T2;
幾個CSV大文件如何導入mysql資料庫,並更新替換對應數據?
數據太大,用資料庫客戶端軟體直接導入非常卡,還是直接執行SQL吧。
1、指定文件路徑。
2、欄位之間以逗號分隔,數據行之間以\r\n分隔(我這裡文件是以\n分隔的)。
3、字元串以半形雙引號包圍,字元串本身的雙引號用兩個雙引號表示。
Sql代碼
複製代碼 代碼如下:
load data infile ‘D:\\top-1m.csv’
into table `site`
fields terminated by ‘,’ optionally enclosed by ‘”‘ escaped by ‘”‘
lines terminated by ‘\n’;
順帶也備份個導出吧。
Sql代碼
複製代碼 代碼如下:
select * from `site`
into outfile ‘D:\\top-1m.csv’
fields terminated by ‘,’ optionally enclosed by ‘”‘ escaped by ‘”‘
lines terminated by ‘\n’;
如何把csv文件導入mysql
mysql導入csv文件,用到的工具phpmyadmin,步驟如下:
登錄phpmyadmin(以本地localhost/phpmyadmin為示例),輸入資料庫賬號和密碼進行登錄。
2.登錄以後選擇具體的資料庫,以test為示例導入csv文件,選中test資料庫,選擇導入,然後選擇格式為csv,其它選項默認,選擇好文件點擊執行。
注意事項:mysql導出sql文件兼容性比較好。
原創文章,作者:D9NK3,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/127918.html