所以我正在远程访问 MySQL 服务器,并且我已经尝试了一切方法来调用以下命令:
LOAD DATA INFILE 'C:\Users\user1\Desktop\csv\mycsv.csv'
INTO TABLE mytable
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 ROWS
但是我收到以下错误:
Error Code: 1290. The MySQL server is running with the --secure-file-priv
option so it cannot execute this statement
然后我尝试修改语句并添加 LOCAL,如下所示:
LOAD DATA LOCAL INFILE 'C:\Users\user1\Desktop\csv\mycsv.csv'
INTO TABLE mytable
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 ROWS
并收到以下错误
Error Code: 1148. The used command is not allowed with this MySQL version
我运行了以下 2 个命令来检查与这两个错误相关的全局变量,结果返回以下内容:
SHOW VARIABLES LIKE "secure_file_priv";
Returns NULL
和
SHOW GLOBAL VARIABLES LIKE 'local_infile';
Returns ON
我联系系统管理员更改了my.ini。我将本地 secure_file_priv 设置为 PC 上的一个目录,但没有成功。我无法访问服务器所在的 PC,因此无法将文件移动到任何本地目录,只能将文件移动到远程访问的目录。
我已经引用了 How should I tackle --secure-file-priv in MySQL? 下的每个解决方案和 How to import CSV file to MySQL table运气不好。
如果您有任何其他想法,请告诉我。谢谢
最佳答案
secure_file_priv 在启动时设置,无法动态更改。将以下内容添加到 my.ini 文件中,然后重新启动 mySQL。
secure-file-priv="C:\Users\user1\Desktop\csv\"
关于mysql - 无法远程将 CSV 加载到 MySQL 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52957152/