Невозможно загрузить данные в таблицу с помощью оператора LOAD DATA (без файла с разделителями табуляции) - PullRequest
0 голосов
/ 06 июня 2019

Я пытаюсь загрузить файл с разделителями табуляции в свой набор данных следующим скриптом:

LOAD DATA INFILE 'C:\ProgramData\MySQL\MySQL Server 8.0\Uploads\host_table_airbnb_new.txt'
INTO TABLE host;

SHOW VARIABLES 
LIKE "secure_file_priv";

Но я получаю ошибку как

Код ошибки: 1290 «secure_file_priv» включен.

Я считаю, что мой синтаксис правильный и мой файл находится в правильном указанном месте, но по какой-то причине я не могу загрузить свои данные.

Не могли бы вы помочь мне понять, что и где я делаю неправильно? Спасибо.

1 Ответ

0 голосов
/ 07 июня 2019

Сервер MySQL обычно начинается с опции --secure-file-priv, которая в основном ограничивает, из каких каталогов вы можете загружать файлы, используя LOAD DATA INFILE. Есть причины ограничить загрузку каталогов из.

Вы можете использовать SHOW VARIABLES LIKE "secure_file_priv";, чтобы увидеть каталог, который был настроен для этих операций LOAD. Таким образом, вы можете сделать любое из этого:

  1. Переместите ваш файл в каталог, указанный secure-file-priv. И ваша команда должна работать.
  2. - Не рекомендуется--: отключить secure-file-priv. Вам придется удалить эту опцию из startup, и это не может быть выполнено динамически (требуется перезапуск службы mysql). Проверьте ваш MySQL при запуске параметры и my.ini.
...