gc889900 2021-01-25 15:08 采纳率: 0%
浏览 11

mysql 执行load 命令 无法执行

事情是这样的,最近有个需求,每天要用csv文件导入到我们的mysql,我想到的是用 "LOAD DATA LOCAL INFILE" 命令于是在Navicat中测试了一下

愉快的成功了.先用工程在实现的时候出现了问题

提示The used command is not allowed with this MySQL version

搜索了好久 无非都是 local_infile的设置问题,默认本身就是1,我也在启动时加了local_infile=1 配置文件也加了, 无论0,1 都不好使;

在一个就是secure_file_priv参数,如果放到mysql对应的文件夹下 是可以导入的,但是我们线上的mysql是RDS的没法提供对应文件夹,而且Navicat就可以把我本地的csv导入到对应表中,也不知道它是怎么做的,希望大神们能告诉我应该如何操作才能让我像Navicat一样导入数据,跪谢

  • 写回答

1条回答 默认 最新

  • 不争之德 2023-02-18 17:52
    关注

    可能你的mysq版本比较旧? 我记得现在的语法 load data最后应该改是 Ignore 1 rows。所以可能你的语法不适用于新版本。

    Navicat也可能是使用mysqlimport实现的数据导入?有可能和直接load data不太一样。

    secure_file_priv的设置需要最高权限,通常会有一个固定的文件夹,你可以通过查询系统变量的值了解对应的路径

    评论

报告相同问题?

悬赏问题

  • ¥15 slaris 系统断电后,重新开机后一直自动重启
  • ¥15 51寻迹小车定点寻迹
  • ¥15 谁能帮我看看这拒稿理由啥意思啊阿啊
  • ¥15 关于vue2中methods使用call修改this指向的问题
  • ¥15 idea自动补全键位冲突
  • ¥15 请教一下写代码,代码好难
  • ¥15 iis10中如何阻止别人网站重定向到我的网站
  • ¥15 滑块验证码移动速度不一致问题
  • ¥15 Utunbu中vscode下cern root工作台中写的程序root的头文件无法包含
  • ¥15 麒麟V10桌面版SP1如何配置bonding