MySQL: локальный загрузочный файл не работает после обновления драйвера с 5 до 8 - PullRequest
1 голос
/ 08 марта 2019

Мы недавно обновили наши клиентские ПК с Windows 7 до Windows 10, и вместе с этим мы обновили наши драйверы MySQL с «Драйвер MySQL ODBC 5.3 Unicode» до «MySQL ODBC 8.0 Unicode Driver».

Iиспользуйте команду LOAD DATA LOCAL INFILE через пакет RODBC R для импорта данных из локального файла CSV на сервер MySQL.На сервере не было внесено никаких изменений, и оператор SQL остается прежним, но после обновления драйвера я получаю следующее сообщение об ошибке:

«Используемая команда не разрешена в этой версии MySQL»

Команда по-прежнему работает, когда я запускаю ее на одной из старых машин Win7, что означает, что это не проблема на сервере (например, local-infile=0 в файле конфигурации).

Кто-нибудь еще испытал это?

Спасибо и всего наилучшего,

Йоханнес

Ответы [ 2 ]

0 голосов
/ 08 марта 2019

Он был отключен из-за уязвимости в том, как драйвер клиента MySQL обрабатывает local-infile на стороне клиента, см. Также: Percona отвечает на вопросы безопасности MySQL LOCAL INFILE .

Включение возможности на клиенте делает ваш клиентский драйвер уязвимым для (внешней) инъекции.Поэтому учтите, что если машина, использующая драйвер odbc, может (ab) использоваться внешними соединениями, она может стать уязвимой для директивы local-infile.

0 голосов
/ 08 марта 2019

Существуют две настройки, которые влияют на LOAD DATA LOCAL INFILE:

  • local-infile, на сервере
  • local-infile, на клиенте

См. документ для справки:

Это также влияет на соединители, LOAD DATA LOCAL INFILE is теперь отключено по умолчанию в соединителе ODBC в 8.0.14 .

...