secure-file-priv 防止 INTO OUTFILE 命令

secure-file-priv preventing INTO OUTFILE command

我正在使用:

SELECT * FROM accounts INTO OUTFILE("C:/Users/Home/Documents/test.txt")

但我收到错误消息:

(db:1290) The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

我没有更改数据库安全设置的权限,但想知道是否有一些替代命令可以解决此问题。谢谢

这是设计使然。 MySQL secure-file-priv option 使用 LOAD DATA INFILE 或 SELECT INTO OUTFILE 限制您可以从中读取(或写入)的目录。

您可以使用以下命令显示允许的目录:

SHOW VARIABLES LIKE "secure_file_priv"

那么你应该将导出指向这个目录。

在您的 MySQL 服务器配置中,将此行放在 [mysqld] 下并重新启动服务

secure_file_priv=/tmp/ #the dir you want to put the result file

mysql -s -e 'SELECT * FROM accounts' | cat > /path/to/file