2013-03-22 14 views
13

Jak wykonać następujące polecenie z plikiem lokalnym na zdalnej bazie danych (innym komputerze)?ZAINSTALUJ INFIĘ DANYCH na zdalnej maszynie

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

Problem wydaje się być to, że INFILE w /tmp/infile.txt nie jest uznawane zdalnie. Jaki byłby właściwy sposób osiągnięcia powyższego?

Odpowiedz

23

LOAD DATA INFILE ładuje plik na komputerze, na którym działa serwer MySQL.

Użyj pliku LOAD DATA LOCAL INFILE, aby załadować plik znajdujący się na komputerze klienta.

7

Nie zapomnij podać --local-infile=1 gdy robi to:

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