Carregar um arquivo local no MySQL é um risco de segurança e está desativado por padrão, você deseja deixá-lo desativado se puder. Quando não é permitido, você recebe este erro:
ERROR 1148 (42000): The used command is not allowed with this MySQL version
Soluções:
-
Use--local-infile=1
argumento na linha de comando mysql:
Ao iniciar o MySQL no terminal, inclua--local-infile=1
argumento, algo assim:
mysql --local-infile=1 -uroot -p mysql>LOAD DATA LOCAL INFILE '/tmp/foo.txt' INTO TABLE foo COLUMNS TERMINATED BY '\t';
Então o comando é permitido:
Query OK, 3 rows affected (0.00 sec) Records: 3 Deleted: 0 Skipped: 0 Warnings: 0
-
Ou envie o parâmetro para o daemon mysql:
mysqld --local-infile=1
-
Ou defina-o no arquivo my.cnf (este é um risco de segurança):
Encontre seu mysqlmy.cnf
arquivo e edite-o como root.
Adicione olocal-infile
linha sob os designadores mysqld e mysql:
[mysqld] local-infile [mysql] local-infile
Salve o arquivo, reinicie o mysql. Tente de novo.
Mais informações podem ser encontradas aqui:http:// dev.mysql.com/doc/refman/5.1/en/load-data-local.html