2

我遇到了 MySQL 的 Load Data Local Infile 命令的问题。我知道由于安全威胁,他们默认禁用它。我有一个我想在 MySql Workbench 中运行的 SQL 脚本。我不断收到错误“1148。此 MySQL 版本不允许使用的命令。” 我已经能够使用命令行争论从命令行让它工作。但是我在工作台上没有任何成功。任何帮助,将不胜感激。这是我的脚本。

DROP DATABASE IF EXISTS a2004TS;

CREATE DATABASE IF NOT EXISTS a2004TS;

USE a2004TS;

DROP TABLE IF EXISTS a2004TS_1;

CREATE TABLE a2004TS_1(
Version CHARACTER(25),
Dsetid CHARACTER(6),
V040001 DOUBLE,
..
.
);

SET GLOBAL local_infile = 1;

LOAD DATA LOCAL INFILE '/home/output/sqlCSV/a2004TS.sqlscripts.table1.csv'
INTO TABLE a2004TS_1
FIELDS TERMINATED BY ',' ENCLOSED BY'"'
LINES TERMINATED BY'
'(columns......);
4

1 回答 1

3

如果服务器以禁用 LOAD DATA 的选项启动,则客户端必须显式调用 mysql_options(...) 以启用它(http://dev.mysql.com/doc/refman/5.5/en/load-data -local.html )。这在 WB 中不会发生,因此您目前无法使用它来加载文件。而是为此使用命令行客户端。

您可以在http://bugs.mysql.com提交功能请求以实现允许导入的处理(例如首选项设置)。

于 2013-01-29T07:41:44.410 回答