Гость
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Импорт данных из CSV в MySQL 8.0 при помощи Workbench / 11 сообщений из 11, страница 1 из 1
19.09.2019, 11:06
    #39863789
luu
luu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
Есть CSV, который нужно импортировать в базу.
При попытке сделать это через mysql в командной строке получаю сообщение:
Код: sql
1.
ERROR 1148 (42000): The used command is not allowed with this MySQL version


Далее попытался импортировать через Workbench, но при удаленном подключении к базе - нет такой возможности

При подключении через Workbench к локальной базе есть кнопка Import:


А при подключении к удаленной (рабочей) - нет:


Данные необходимо подгружать большими блоками с определенной периодичностью из файла. Как этого добиться?
...
Рейтинг: 0 / 0
19.09.2019, 11:43
    #39863826
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
luuПри попытке сделать это через mysql в командной строке получаю сообщение:Это полное сообщение? поди запрос отрезан, а там
Код: sql
1.
LOAD DATA  LOCAL  INFILE ...



Чтобы работало - надо разрешить. Подробности о том, как разрешить и почему дефолтно запрещено - читать в документации.
...
Рейтинг: 0 / 0
19.09.2019, 11:43
    #39863828
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
Хотя, если CSV уже доставлен на MySQL-сервер - то нахрена LOCAL? выбросить его из запроса...
...
Рейтинг: 0 / 0
19.09.2019, 11:52
    #39863836
luu
luu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
AkinaluuПри попытке сделать это через mysql в командной строке получаю сообщение:Это полное сообщение? поди запрос отрезан, а там
Код: sql
1.
LOAD DATA  LOCAL  INFILE ...




Да, запрос выглядит вот так:
Код: sql
1.
LOAD DATA LOCAL INFILE "/home/x/x/x/asd.csv" INTO TABLE asd;



Если отправлять запрос без LOCAL, то:
Код: sql
1.
2.
LOAD DATA INFILE "/home/x/x/x/asd.csv" INTO TABLE asd;
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
...
Рейтинг: 0 / 0
19.09.2019, 12:09
    #39863853
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
Ну так посмотрите же наконец в документацию! Русским же по белому пишут про "--secure-file-priv option"!
...
Рейтинг: 0 / 0
19.09.2019, 13:36
    #39863934
luu
luu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
Мне все-таки нужен параметр LOCAL, т.к. необходимо загружать файл с машины-клиента.
Запускаю mysql с ключом --local-infile

Гугл говорит, что еще на сервере нужно прописать в файл конфигурации это и перезапустить его:
Код: sql
1.
2.
3.
4.
[mysqld]
local-infile 
[mysql]
local-infile



Как это сделать? Доступ к базе через mysql. Пользователь root
...
Рейтинг: 0 / 0
19.09.2019, 14:13
    #39863974
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
Попробуйте изменить соотв. настройку в рантайме (это допустимо) непосредственно перед выполнением импорта. Т.е.
Код: sql
1.
SET GLOBAL local_infile=1;LOAD DATA LOCAL INFILE "/home/x/x/x/asd.csv" INTO TABLE asd;SET GLOBAL local_infile=0;


И не забудьте запустить клиента с разрешением LOCAL (в настройках или ключом строки запуска).
...
Рейтинг: 0 / 0
19.09.2019, 14:14
    #39863975
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
Изменить же INI-файл или строку запуска сервера, имея доступ только к БД - невозможно.
...
Рейтинг: 0 / 0
19.09.2019, 14:18
    #39863980
luu
luu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
AkinaПопробуйте изменить соотв. настройку в рантайме (это допустимо) непосредственно перед выполнением импорта. Т.е.
Код: sql
1.
SET GLOBAL local_infile=1;LOAD DATA LOCAL INFILE "/home/x/x/x/asd.csv" INTO TABLE asd;SET GLOBAL local_infile=0;


И не забудьте запустить клиента с разрешением LOCAL (в настройках или ключом строки запуска).

Это сработало! Спасибо большое.

А как Workbench заставить вытворить такое же, т.е. дать возможность импорта из файла на клиентской машине?
...
Рейтинг: 0 / 0
19.09.2019, 14:25
    #39863985
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
По идее всё то же самое. Только у воркбенча, скорее всего, надо именно в конфиге ставить разрешение local-infile.
...
Рейтинг: 0 / 0
25.09.2019, 12:16
    #39866794
luu
luu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из CSV в MySQL 8.0 при помощи Workbench
AkinaПо идее всё то же самое. Только у воркбенча, скорее всего, надо именно в конфиге ставить разрешение local-infile.

Подскажите кто-нибудь, как это сделать?
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Импорт данных из CSV в MySQL 8.0 при помощи Workbench / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]