溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mysql遇到load data導(dǎo)入文件數(shù)據(jù)出現(xiàn)1290錯(cuò)誤怎么辦

發(fā)布時(shí)間:2021-07-28 11:39:22 來(lái)源:億速云 閱讀:174 作者:小新 欄目:MySQL數(shù)據(jù)庫(kù)

這篇文章主要介紹mysql遇到load data導(dǎo)入文件數(shù)據(jù)出現(xiàn)1290錯(cuò)誤怎么辦,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

錯(cuò)誤出現(xiàn)情景

  在cmd中使用mysql命令,學(xué)生信息表添加數(shù)據(jù)。使用load data方式簡(jiǎn)單批量導(dǎo)入數(shù)據(jù)。

  準(zhǔn)備好文本數(shù)據(jù): xueshengxinxi.txt 文件  數(shù)據(jù)之間以tab鍵進(jìn)行分割

  執(zhí)行 “l(fā)oad data infile 文本數(shù)據(jù)路徑  into table tab_load_data”  彈出錯(cuò)誤。

#load data (載入數(shù)據(jù))語(yǔ)法,要載入數(shù)據(jù)如下:
 1 張三   男  江西 1
 2 李四   男  四川 2
 3 王五   男  上海 1
 4 趙六   女  湖北 3
 5 孫七   女  湖北 3
 6 周八   男  湖南 1 

#測(cè)試數(shù)據(jù)表
 create table tab_load_data (
  id int auto_increment primary key,
  name varchar(10),
  sex enum('男','女'),
  native varchar(10),
  f5 int
 );

錯(cuò)誤描述

  使用load data 導(dǎo)入文件數(shù)據(jù)總是彈出錯(cuò)誤(Error 1290.....)如下:

  ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

    mysql遇到load data導(dǎo)入文件數(shù)據(jù)出現(xiàn)1290錯(cuò)誤怎么辦

解決思路(過(guò)程)

  1) 既然錯(cuò)誤提示說(shuō)明運(yùn)行了secure-file-priv這個(gè)選項(xiàng),不能執(zhí)行l(wèi)oad服務(wù),那就找到MYSQL的配置文件"my.ini" 中該配置項(xiàng)。

  2) 配置前,先關(guān)閉mysql服務(wù)

  3) 打開(kāi)my.ini,搜索關(guān)鍵字“secure-file-priv”找到這個(gè)選項(xiàng)后,直接注釋掉這個(gè)選項(xiàng),保存后,啟動(dòng)MYSQL服務(wù)

      mysql遇到load data導(dǎo)入文件數(shù)據(jù)出現(xiàn)1290錯(cuò)誤怎么辦

  4) 結(jié)果還是一樣的錯(cuò)誤。說(shuō)明注釋沒(méi)有效果。這是怎么回事了?

    執(zhí)行命令 “show variables like '%secure%'”發(fā)現(xiàn)原來(lái)我注釋掉后,secure-file-priv的值為NULL,說(shuō)明禁止導(dǎo)入導(dǎo)出?!       ?/p>

    這說(shuō)明注釋掉是不行的。不刪配置文件條目,那只好修改目錄好了。

  5)修改路徑,執(zhí)行命令 “show variables like '%secure%'” 查看 , 重啟MYSQL。

    mysql遇到load data導(dǎo)入文件數(shù)據(jù)出現(xiàn)1290錯(cuò)誤怎么辦
    mysql遇到load data導(dǎo)入文件數(shù)據(jù)出現(xiàn)1290錯(cuò)誤怎么辦

  6)再執(zhí)行l(wèi)oad data, 執(zhí)行成功

  mysql遇到load data導(dǎo)入文件數(shù)據(jù)出現(xiàn)1290錯(cuò)誤怎么辦

  更復(fù)雜的load用法可以查看mysql手冊(cè)。 到此,該問(wèn)題解決。

三, 小結(jié)說(shuō)明

  從本錯(cuò)誤中吸取:

  1) load data : 可以從一個(gè)外部的記事本文件中導(dǎo)入數(shù)據(jù)到某個(gè)表中。

    該記事本中的數(shù)據(jù)通常要求“比較整齊”,一行文本對(duì)應(yīng)一行數(shù)據(jù),一行中用某種字符(如用tab符)來(lái)分割一個(gè)一個(gè)字段的值

  2) secure-file-priv這個(gè)參數(shù)用來(lái)限制數(shù)據(jù)導(dǎo)入和導(dǎo)出操作的效果。

    如:執(zhí)行LOAD,SELECT...INTO OUTFILE語(yǔ)句和LOAD_FILE()函數(shù)。這些操作需要file權(quán)限。

  3)如果 secure-file-priv這個(gè)參數(shù)設(shè)為一個(gè)目錄名,MYSQL服務(wù)只允許這個(gè)目錄中執(zhí)行文件的導(dǎo)入和導(dǎo)出操作。

    這個(gè)目錄必須存在,MYSQL服務(wù)不會(huì)創(chuàng)建它。

  4) 如果secure-file-priv這個(gè)參數(shù)為NULL,MYSQL服務(wù)會(huì)禁止導(dǎo)入和導(dǎo)出操作。

以上是“mysql遇到load data導(dǎo)入文件數(shù)據(jù)出現(xiàn)1290錯(cuò)誤怎么辦”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI