mysql导入导出数据报错The MySQL server is running with the --secure-file-priv option解决办法

Posted singsong_孙松

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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\' 
 
 
 
本文从其他博客借鉴,如侵权,请联系!敬上。

以上是关于mysql导入导出数据报错The MySQL server is running with the --secure-file-priv option解决办法的主要内容,如果未能解决你的问题,请参考以下文章

sql文件太大,mysql导入报错怎么办

mysql导入sql文件是报错如下,该怎么解决?

win处navicat直接导出的sql脚本导入Linux mysql报错问题

mysql插入数据库一直报错 怎么修改

MYSQL导入数据出现The MySQL server is running with the --secure-file-priv

MySQL外部导入数据报错