1

这真的让我很烦。我在 Windows 计算机上使用 MySQL。我试图运行的 MySQL 语句如下:

SELECT tempInfo.clientName FROM tempInfo LIMIT 1 INTO OUTFILE 'test.out'

我知道我需要通过找到需要使用的文件夹的正确位置并将我的代码更改为:

SELECT tempInfo.clientName FROM tempInfo LIMIT 1 INTO OUTFILE 'C:\ProgramData\MySQL\MySQL Server 5.7\Uploads\test.out';

这仍然给出相同的错误。所以现在我尝试将 my.ini 文件编辑为以下内容:

secure_file_priv=''

这样任何目录都可以使用,但是我无法将 my.ini 文件保存回该文件夹,因为它说它被拒绝。

接下来,我尝试在 MySQL 命令行客户端中使用以下内容对其进行更改:

SET @@secure_file_priv='';

这只是给我一个错误,指出“secure_file_priv”是一个只读变量。

最后我尝试使用以下参数启动 MySQL 服务器:

--secure_file_priv=''

但是当我尝试在 MySQL 命令行中查看变量时,它仍然显示如下:

+------------------+------------------------------------------------+ | Variable_name | Value | +------------------+------------------------------------------------+ | secure_file_priv | C:\ProgramData\MySQL\MySQL Server 5.7\Uploads\ | +------------------+------------------------------------------------+ 1 row in set (0.00 sec)

我现在真的被困住了,到处看了看,我不知道该怎么办。好像我需要将变量更改为不是只读的,但我不知道该怎么做。

4

1 回答 1

0

我修改了路径并添加\\了它,如下所示:

LOAD DATA INFILE 'C:\\ProgramData\\MySQL\\MySQL Server 5.6\\Uploads\\filename.csv'
于 2020-05-06T19:41:14.010 回答