【问题标题】:Loading csv file into MYSQL table using LOAD INFILE使用 LOAD INFILE 将 csv 文件加载到 MYSQL 表中
【发布时间】:2015-04-07 01:43:32
【问题描述】:

我正在尝试将一个小文件加载到在 MYSQL 上创建的虚拟表中,但是当我尝试运行命令时出现以下错误。请帮助我解决这个问题。谢谢。

mysql> LOAD DATA INFILE '/Users/ravitejavutukuri/Desktop/Acme Reports/abc.txt' INTO TABLE dummy FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
ERROR 1045 (28000): Access denied for user ''@'localhost' (using password: NO)

mysql> LOAD DATA LOCAL INFILE '/Users/ravitejavutukuri/Desktop/Acme Reports/abc.txt' INTO TABLE dummy FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
ERROR 1148 (42000): The used command is not allowed with this MySQL version

mysql> LOAD DATA INFILE '/Users/ravitejavutukuri/Desktop/Acme Reports/abc.txt' INTO TABLE dummy FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
ERROR 1045 (28000): Access denied for user ''@'localhost' (using password: NO)

mysql> local-infile=1
    -> ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'local-infile=1' at line 1

【问题讨论】:

  • 您的屏幕截图太小,无法阅读。发布错误消息。

标签: mysql database file load load-data-infile


【解决方案1】:

我发现了一些潜在的问题。

  1. 需要创建表user
  2. 需要在MySQL中设置local-infile=1选项(here

  3. 您可能需要为该用户授予权限。如果你想快速做到这一点,你可以使用:GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';

【讨论】:

  • local-infile=1 -> ; ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“local-infile=1”附近使用正确的语法
  • local-infile 是你可以在启动 MySQL 时传递的参数,也可以将其永久添加到 my.cnf 文件中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-28
  • 2013-01-24
  • 2013-09-25
  • 2018-03-30
  • 2020-05-07
  • 2015-11-22
相关资源
最近更新 更多