在远程计算机上加载数据INFILE

时间:2013-03-22 20:21:45

标签: mysql linux unix

如何在远程数据库(不同的计算机)上使用本地文件执行以下命令?

$MYSQL_PATH/mysql -u root -h remote.net files -e "
    LOAD DATA INFILE '$1'
    INTO TABLE $TABLE_NAME
    FIELDS TERMINATED BY ','
      (size, @d2, @d3, @d4, @d5, path)

问题似乎是/tmp/infile.txt处的INFILE未被远程识别。完成上述任务的正确方法是什么?

2 个答案:

答案 0 :(得分:31)

LOAD DATA INFILE在运行MySQL服务器的机器上加载文件。

使用LOAD DATA LOCAL INFILE加载位于客户端计算机上的文件。

答案 1 :(得分:9)

执行此操作时不要忘记包含--local-infile=1

$MYSQL_PATH/mysql -u root -h remote.net files --local-infile=1 -e "
    LOAD DATA LOCAL INFILE...