【问题标题】:How can I load local data in MySQL Workbench 8.0?如何在 MySQL Workbench 8.0 中加载本地数据?
【发布时间】:2020-06-07 00:24:39
【问题描述】:

我正在尝试将本地数据从 pc 加载到 MySQL 数据库('texnologialogismikou'),但出现很多错误。我在论坛和 MySQL 网站上进行了很多搜索,但找不到解决方案。 我尝试更改变量,将文件移动到 Workbench 目录和其他一些东西,但没有任何效果。

load data local infile 'C:\Users\Mattheos\Desktop\ActualTotalLoad-10days.csv'
Into table texnologialogismikou.actualtotalload
fields terminated by ';' enclosed by '\"' lines terminated by '\n' 

我遇到的一些错误:

错误代码:2. 找不到文件“C:ProgramDataMySQLMySQL Server 8.0Uploads”(操作系统错误号 2 - 没有这样的文件或目录)

错误代码:1148。此 MySQL 版本不允许使用的命令

错误代码:1290。MySQL 服务器使用 --secure-file-priv 选项运行,因此无法执行此语句

附:我知道有这样的帖子,但这是我能做的最后一件事。我尝试了所有能找到的方法,但没有任何效果。

【问题讨论】:

  • 首先检查提到的文件夹是否存在,然后您有两个选择,将您的数据复制到该文件夹​​中或更改文件夹,但我这里有一个案例,这也不起作用

标签: mysql sql mysql-workbench load-data-infile


【解决方案1】:

最后一条错误消息是相关的:

错误代码:1290。MySQL 服务器使用 --secure-file-priv 选项运行,因此无法执行此语句

--secure-file-priv 选项限制可以从哪个目录加载文件,如explained in the documentation

如果设置为目录的名称,服务器将导入和导出操作限制为仅处理该目录中的文件。

您可以使用以下命令显示配置的目录:

show variables like "secure_file_priv";

只需将要导入的文件移动到该目录,然后再次运行load 语句。

【讨论】:

    【解决方案2】:

    试试 mysqlimport

    https://dev.mysql.com/doc/refman/8.0/en/mysqlimport.html

    或尝试社区版的工具,例如 Pentaho ETL,它可以非常快速地加载数据。

    【讨论】:

      【解决方案3】:

      在 mySQL worckbench 上的“管理服务器连接”窗口 -> 选择您的连接 -> 转到“高级”选项卡并在其他文本输入中插入 OPT_LOCAL_INFILE=1。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-05-11
        • 2021-11-18
        • 2019-05-11
        • 1970-01-01
        • 2021-02-12
        • 2011-05-25
        • 2020-09-22
        • 1970-01-01
        相关资源
        最近更新 更多