2013-03-22 42 views
13

Làm cách nào để thực hiện lệnh sau, với tệp cục bộ, trên cơ sở dữ liệu từ xa (máy khác)?LOAD DATA INFILE trên máy từ xa

$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) 

Vấn đề có vẻ là INFILE tại /tmp/infile.txt không được công nhận từ xa. Điều gì sẽ là cách chính xác để thực hiện những điều trên?

Trả lời

23

LOAD DATA INFILE tải một tệp trên máy mà máy chủ MySQL đang chạy.

Sử dụng LOAD DATA LOCAL INFILE để tải tệp nằm trên máy khách của bạn.

7

Đừng quên bao gồm --local-infile=1 khi làm điều này:

$MYSQL_PATH/mysql -u root -h remote.net files --local-infile=1 -e " 
    LOAD DATA LOCAL INFILE... 
Các vấn đề liên quan