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的对应配置文件
比如我的在服务器上就是这个位置
![](https://img2018.cnblogs.com/i-beta/1671780/201912/1671780-20191213184215585-79438042.png)
然后在根据这个目录,查看配置文件在哪里了(路径后面加上 --verbose --help|grep -A 1 'Default options'),就会出现以下信息。
![](https://img2018.cnblogs.com/common/1671780/201912/1671780-20191213184406575-951197554.png)
这个信息的意思是:
服务器首先读取的是/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分隔
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' ;
into outfile '/mnt/disk1/mysql/xx.csv'
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n' ;
本文从其他博客借鉴,如侵权,请联系!敬上。