Cargar un archivo local en MySQL es un peligro para la seguridad y está desactivado de forma predeterminada, si puede, desea dejarlo desactivado. Cuando no está permitido, obtiene este error:
ERROR 1148 (42000): The used command is not allowed with this MySQL version
Soluciones:
-
Utilice
--local-infile=1
argumento en la línea de comandos de mysql:Cuando inicie MySQL en la terminal, incluya
--local-infile=1
argumento, algo como esto:mysql --local-infile=1 -uroot -p mysql>LOAD DATA LOCAL INFILE '/tmp/foo.txt' INTO TABLE foo COLUMNS TERMINATED BY '\t';
Entonces se permite el comando:
Query OK, 3 rows affected (0.00 sec) Records: 3 Deleted: 0 Skipped: 0 Warnings: 0
-
O envíe el parámetro al demonio mysql:
mysqld --local-infile=1
-
O configúrelo en el archivo my.cnf (esto es un riesgo de seguridad):
Encuentra tu mysql
my.cnf
y edítelo como root.Agrega el
local-infile
línea debajo de los designadores mysqld y mysql:[mysqld] local-infile [mysql] local-infile
Guarde el archivo, reinicie mysql. Inténtalo de nuevo.
Puede encontrar más información aquí:http:// dev.mysql.com/doc/refman/5.1/en/load-data-local.html