红联Linux门户
Linux帮助

ubuntu16.04联系MySQL的into outfile时出错ERROR 1290 (HY000)

发布时间:2017-03-24 10:41:06来源:linux网站作者:Nancyse
1.问题描述
今天,在ubuntu上联系MySQL的select ... into outfile时,发生了如下错误:
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement。
笔者采用的ubuntu版本是16.04,mysql版本是5.7.17。
 
2.产生问题的原因
从问题的描述来看,是在--secure-file-priv 出现了问题,经过查看了官方文档,发现:
ubuntu16.04联系MySQL的into outfile时出错ERROR 1290 (HY000)
上面的意思是:
1].如果secure_file_priv 的值为空的话,这个变量将不起作用;
2].如果secure_file_priv的值为路径的话,则mysql服务器将限制导入导出操作功能在这个设置的路径下使用。这个路径必须存在。
3].如果secure_file_priv的值设置为空的话,mysql服务器不能使用导出导入操作功能.但是,在mysql 5.7.6下是可以操作的。
所以,也就是说,要找到secure_file_priv这个变量,并且将其设置为我们想要存放数据的路径就可以了。
 
3.问题解决方案
首先,进入root,
$ su
然后,打开mysql.conf
# vi /etc/mysql/mysql.conf
然后,在[mysqld]处添加:secure_file_priv=/tmp/mysqldata(此为自己想要保存数据的路径)
最后,重启一下mysql,就可以正常导入导出了。
有一点需要注意,那就是要确保你设置的路径mysql具有读写权限,关于这一点,需要大家查找关于文件读写权限设置相关的信息。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/29436.html