mysql導入導出數據報錯The MySQL server is running with the --secure-file-priv option解決辦法


報錯原因:直接能看出來是需要配置ecure-file-priv參數。

 2019-12-13

1.參數值對應限制。

mysql>SHOW VARIABLES LIKE "secure_file_priv";

secure_file_prive=null   -- 限制mysqld 不允許導入導出

secure_file_priv=/tmp/   -- 限制mysqld的導入導出只能發生在/tmp/目錄下

secure_file_priv=' '         -- mysqld 允許導入導出

2.更改secure_file_pri的值

  2.1找到自己mysql的對應配置文件

  比如我的在服務器上就是這個位置
           

 
  然后在根據這個目錄,查看配置文件在哪里了(路徑后面加上 --verbose --help|grep -A 1 'Default options'),就會出現以下信息。
    

 
  這個信息的意思是: 
  服務器首先讀取的是/etc/my.cnf文件,如果前一個文件不存在則繼續讀/etc/mysql/my.cnf文件,如果還不存在依次向后查找。
 
  找到配置文件以后就可以根據需要修改配置文件。

  2.2修改

  在/etc/my.cnf里面添加,重啟mysql服務器即可。
    
secure_file_priv=''

  

3.導入導出數據

-- sql導入csv文件 
load data local infile '/Users/jojo/dumps/train.csv' --文件目錄
into table new_table
fields terminated by','optionally enclosed by '"' escaped by '"' 
-- 字段之間以逗號分隔,字符串以半角雙引號包圍,字符串本身的雙引號用兩個雙引號表示 
lines terminated by'\r\n' -- 數據行之間以\r\n分隔
 
eg:
select * from table_name
into outfile '/mnt/disk1/mysql/xx.csv'
FIELDS TERMINATED BY ','   
OPTIONALLY ENCLOSED BY '"'   
LINES TERMINATED BY '/n' 
 
 
 
本文從其他博客借鑒,如侵權,請聯系!敬上。


免責聲明!

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



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