在osx上更改mysql中的secure-file-priv

问题描述 投票:0回答:3

我试图将我的结果表打印到csv文件或文本文件中,我在mysql中使用outfile但我收到此错误:ERROR 1290(HY000):MySQL服务器正在运行--secure-file-priv选项所以它无法执行此语句

我试图将此secure-file-priv设置为“”但我无法在我的mac中找到my.cnf文件。 my.cnf的定位结果如下:

/usr/local/Cellar/mysql/5.7.16/mysql-test/include/default_my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/federated/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/ndb/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/ndb_big/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/ndb_binlog/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/ndb_ddl/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/ndb_memcache/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/ndb_rpl/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/ndb_team/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/ndbcluster/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/rpl/extension/bhs/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/rpl/my.cnf
/usr/local/Cellar/mysql/5.7.16/mysql-test/suite/rpl_ndb/my.cnf

我不认为他们中的任何一个是我需要添加[mysqld] secure-file-priv =“”的。我也尝试在mysql中设置它,但它是只读的,我无法改变它。我甚至试图在/ etc /中手动添加my.cnf文件后停止并重新启动我的mysql,但后来又无法启动服务器并使用mysql。

mysql angularjs database macos csv
3个回答
2
投票

我正在使用mysql Ver 14.14 Distrib 5.7.20,for osx10.12(x86_64)按照以下步骤更改-secure-file-priv

  1. 查找位于/ usr / local / etc的“my.cnf”文件
  2. 将secure-file-priv =“”添加到my.cnf中
  3. 使用/usr/local/opt/mysql/support-files/mysql.server restart重新启动mysql

重启后我可以在mysql上使用OUTFILE命令。


1
投票

我查看了MySQL Workbench的设置。在“选项文件”中,它被设置为正确的值。但在“管理 - 状态和系统变量”中,它保持默认值NULL。虽然我重新启动了服务器。

经过一些研究,我发现它是由错误的文件权限引起的。我刚开始的是:-rw ------- 1根轮31 3月24日13:31 my.cnf

并且我使用命令chmod 0755将权限更改为:-rwxr-xr-x 1 root wheel 31 Mar 24 13:31 my.cnf

然后重新启动服务器,我可以看到“选项文件”和“管理 - 状态和系统变量”具有相同的值和状态。


0
投票

这就是我服务器上的样子。我无法在评论中添加屏幕截图。

This is what it looks like on my server;

© www.soinside.com 2019 - 2024. All rights reserved.