【问题标题】:LOAD DATA LOCAL INFILE file request rejected due to restrictions on access由于访问限制,LOAD DATA LOCAL INFILE 文件请求被拒绝
【发布时间】:2022-04-02 13:08:14
【问题描述】:

我在 MySQL 工作台上工作时收到此错误“LOAD DATA LOCAL INFILE file request denied 由于访问限制”。我是Mysql的新手。我在 StackOverflow 中找到了一个类似的帖子,但它们都不适合我。

CREATE DATABASE assignment02;
USE assignment02;

CREATE TABLE `hss_electives`(
                         sno INT NOT NULL UNIQUE,
                         roll_number INT,
                         sname CHAR(50) NOT NULL,
                         cid CHAR(50),
                         cname CHAR(50) NOT NULL,
                         PRIMARY KEY(roll_number, cid)
                         );


 LOAD DATA LOCAL infile 'C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/hss_electives.csv'
 INTO TABLE hss_electives
 fields terminated BY ','
 lines terminated BY '\n'
 ignore 1 rows;

我的 local_infile 选项设置为“ON

我的 secure_file_priv 设置为我的 CSV 文件所在的同一目录。

我的 csv 文件如下所示:

【问题讨论】:

  • 您需要在客户端和服务器中设置一个选项。我在这个答案中展示了如何在 MySQL Workbench 中执行此操作:stackoverflow.com/a/65484140/20860
  • 删除本地选项(文件已经是本地的)。检查该帐户是否具有 FILE 权限。
  • 谢谢,@Akina 删除“本地”一词有效!
  • 应用@BillKarwin 的链接解决方案并保留“本地”一词后,一切都对我有用。删除“本地”最初对我不起作用。

标签: mysql sql database mysql-workbench


【解决方案1】:

终于,我得到了这个答案,有两种方法可以纠正这个错误:

  1. 正如 Akina 所指出的,从加载数据本地 infile 中删除“本地”字是有效的!

  2. 不移除本地关键字的解决方案

    • 转到您的连接,然后选择编辑连接。
    • 然后选择高级选项并添加此行:OPT_LOCAL_INFILE=1; -感谢Bill Karwin 推荐这个方法!

【讨论】:

    猜你喜欢
    • 2020-12-01
    • 2020-12-26
    • 2020-11-04
    • 1970-01-01
    • 1970-01-01
    • 2013-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多