Как мой сервер, так и клиент MySql работают с local-infile=1
. Это позволяет формировать мой выполнять запросы, подобные этим:Doctrine DBAL и LOAD DATA LOCAL INFILE
LOAD DATA LOCAL INFILE /var/data/report.csv INTO TABLE MyTable FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 2 LINES (column1, column2, column3)';
Все хорошо, когда я вхожу в к серверу MySql из командной строки, а затем выполнить запрос.
Однако, когда я хочу, чтобы выполнить тот же запрос с моим приложением, которое использует Doctrine DBAL и db.driver: pdo_mysql
в conntect к той же базе данных, я получаю эту ошибку:
Syntax error or access violation: 1148 The used command is not allowed with this MySQL version
Оказывается, что моя установка mysql-клиент и сервер (local-infile=1
) не соблюдаются Doctrine DBAL. Соединение приложения не разрешает LOAD DATA LOCAL INFILE
, пока клиент и хост db делают это. Почему это? Как я могу настроить подключение к db для возможности выполнить LOAD DATA LOCAL INFILE
?