我正在使用:
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
我没有更改数据库安全性设置的权限,但是想知道是否有一些替代命令可以解决此问题。谢谢
答案 0 :(得分:1)
这是设计使然。 MySQL secure-file-priv option限制使用LOAD DATA INFILE或SELECT INTO OUTFILE从中读取(或写入的目录)。
您可以使用以下命令显示允许的目录:
SHOW VARIABLES LIKE "secure_file_priv"
然后,您应该将导出指向该目录。
答案 1 :(得分:1)
在您的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