MySQL LOAD DATA LOCAL INFILE разница в клиентах

Я пытаюсь запустить этот запрос

LOAD DATA LOCAL INFILE "C:/myfile.txt"
 IGNORE INTO TABLE mydb.mytable
 FIELDS TERMINATED BY ';'
 OPTIONALLY ENCLOSED BY '"'
 LINES TERMINATED BY '\r\n'

Если я запускаю его в MySQL Workbench (v8.0.16), я получаю сообщение об ошибке

Код ошибки: 1148. Используемая команда недопустима в этой версии MySQL

Однако, если я запускаю его в SQLYog (Professional v12.09), он работает нормально.

Я запускаю обе части кода на одном компьютере, с одним и тем же пользователем в одной базе данных, запущенной на одном сервере.

На этом сервере local_infile = 1

Насколько я могу судить, единственная разница в этих запросах заключается в том, что используется клиент SQL.

Я предполагаю, что это строка подключения / настройки, которые по умолчанию различаются между ними, однако я не могу найти никакой документации по этому поводу.

Почему это могло быть и как я могу это исправить?

Спасибо


person Mike de H    schedule 23.05.2019    source источник


Ответы (1)


В Linux вам нужно запустить клиент mysql в командной строке как.

mysql -u root -ppassword --local-infile=1

вы также должны установить local_infile = 1 в файле конфигурации

person Raja vikraman    schedule 23.05.2019