MySQL導入導出你還在用mysqldump嗎?


在MySQL5.6之后出現了快速導入導出數據量大的表的方式

1.由於這個屬性默認是關閉的,小編建議最好查詢一下該功能是否正常開啟

show global variables like '%secure_file_priv%'; # show global variables 查詢mysql系統配置

如下圖,表示已經開啟(如果查詢出來的值為 null 表示沒有開啟)

2.開啟快速導入導出

修改 MySQL 配置文件(windows my.ini、linux my.cnf)

在[mysqld]下添加 secure_file_priv=''

(補充)

secure_file_priv 的值可以為某個路徑,表示只能導出到某個路徑下,空字符串表示所有路徑都可以

3.重啟 MySQL 服務

4.執行快速導出(200w數據大概幾秒即可全部導出(僅供參考))

select * into  OUTFILE '導出絕對路徑/文件名.txt' from 表名;

5.快速導入(需要先創建要導入的表)(200w數據本地導入大概需要15秒左右(僅供參考))

 load data infile '文件絕對路徑/文件名.txt' INTO TABLE 表名;

以上就是相關操作,小編測試的表都是字段比較少的(4、5)個,而且每一列數據也不超過10個字符

   (補充)

  如果在步驟4和步驟5中的路徑不是絕對路徑,那么會發生錯誤

  如果沒有寫路徑,MySQL 會默認去該數據庫的存儲目錄文件中查找(由於安裝 MySQL 時會配置,這個要根據實際情況來定。如果不知道數據庫路徑,請點這里

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM