因此,我正在远程访问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下的所有解决方案。
如果您还有其他想法,请告诉我。谢谢
答案 0 :(得分:0)
secure_file_priv在启动时设置,无法动态更改。在my.ini文件中添加以下内容,然后重新启动mySQL。
secure-file-priv="C:\Users\user1\Desktop\csv\"