如何处理MySQL服务器正在运行--secure-file-priv选项,因此它无法在Mac上执行此语句

时间:2017-02-24 03:39:23

标签: mysql macos

我想在mySQL 5.7.17上关闭secure-file-priv。我已尝试过添加secure-file-priv =""的其他建议。到my.cmf,但mySQL之后拒绝启动:

bash-3.2# mysql
mysql: [ERROR] unknown variable 'secure-file-priv='
bash-3.2# 

其他帖子建议使用secure_file_priv,但我从mySQL获得相同的响应:未知变量。

我还尝试将--secure-file-priv=/path/to/folder添加到mySQL的启动守护程序中,但是我得到了同样的错误。

有没有人知道如何在Mac版的mySQL上关闭这个繁琐的功能?

谢谢!

3 个答案:

答案 0 :(得分:1)

想出来(有点......)。

它是secure-file-priv = ""但我必须卸载mySQL并重新安装然后使用mySQL工作台进行设置以避免未知变量错误。

答案 1 :(得分:1)

对于通过MAMP安装的MySQL(在Mac上):

  1. 打开" MAMP"使用聚光灯
  2. 点击"停止服务器"
  3. 编辑〜/ .my.cnf(使用vi或您喜欢的编辑器)和以下几行:

    $ vi~ / .my.cnf

  4. [mysqld_safe]
    [mysqld]
    secure_file_priv="/Users/russian_spy/"
    
    1. 点击"启动服务器" (在MAMP窗口中)
    2. 现在检查它是否有效:

      一个。启动mysql(默认MAMP用户是root,密码也是root)

      $ /Applications/MAMP/Library/bin/mysql -u root -p 
      

      湾在mysql中查看列入白名单的路径

      mysql> SELECT @@GLOBAL.secure_file_priv;
      +---------------------------+
      | @@GLOBAL.secure_file_priv |
      +---------------------------+
      | /Users/russian_spy/          |
      +---------------------------+
      1 row in set (0.00 sec)
      

      ℃。最后,通过将表train导出到CSV文件

      进行测试
      mysql> SELECT * FROM train INTO OUTFILE '/Users/russian_spy/test.csv' FIELDS TERMINATED BY ',';
      Query OK, 992931 rows affected (1.65 sec)
      
      mysql>
      

答案 2 :(得分:0)

我遇到了这个错误。

它是在错误的部分中导致变量的。

仅在[mysqld]下有效:

[mysqld]
secure_file_priv="/home"

此外,我注意到,当我尝试将其设置为空字符串时,它不起作用-仅当它具有实际路径时,它才起作用