【问题标题】:secure-file-priv preventing INTO OUTFILE command防止 INTO OUTFILE 命令的安全文件私有
【发布时间】:2019-06-21 02:20:05
【问题描述】:

我正在使用:

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 sql database csv load-data-infile


    【解决方案1】:

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

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

    SHOW VARIABLES LIKE "secure_file_priv"
    

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

    【讨论】:

    • 我没有写入该目录的权限
    【解决方案2】:

    在您的 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 
    

    【讨论】:

      猜你喜欢
      • 2011-08-10
      • 2010-10-31
      • 1970-01-01
      • 2020-02-17
      • 1970-01-01
      • 2011-05-14
      • 2014-10-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多