MySQL查询出错提示 --secure-file-priv解决方法

在某台DB上准备运行一个SQL语句,就是用SELECT INTO OUTFILE把查询结果写入到文件的时候提示以下信息:

The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

出现这个问题的原因是因为启动MySQL的时候使用了--secure-file-priv这个参数,这个参数的主要目的就是限制LOAD DATA INFILE或者SELECT INTO OUTFILE之类文件的目录位置,我们可以使用

SELECT @@global.secure_file_priv;
查询到你当前设置的路径,默认应该是/var/lib/mysql-files

如果要解决这个问题,我们可以通过下面2种方式:

  1. 将你要导入或导出的文件位置指定到你设置的路径里

  2. 由于不能动态修改,我们可以修改my.cnf里关于这个选项的配置,然后重启即可。

推荐阅读更多精彩内容