2013-05-13 89 views
1

我是新來的ssh,嘗試使用bash腳本LOAD DATA INFILE不bash腳本內工作

這裏使用LOAD DATA INFILE語法LAOD通過bash腳本CSV文件是我的腳本:

mysql -u $MYSQL_USERNAME -p$MYSQL_PASSWORD -D $MYSQL_DATABASE \ 
    load data local infile '$FILE_TR_HI' into table trans_hist_test \ 
    fields terminated by ',' lines terminated by '\r\n'; 

這腳本單獨運行良好。我的意思是在劇本之外。 但是,當我有這個腳本,它拋出未發現

我怎樣才能解決這個錯誤

Load命令?

回答

0

儘量提供完整的路徑到mysql

/usr/local/mysql/bin/mysql -u ... 
+0

感謝您的回答。 – user2376510 2013-05-13 06:30:47

+0

@ user2376510不客氣。它有幫助嗎? – peterm 2013-05-13 06:32:10

+0

不,它沒有工作。我給我的路徑路徑是/ usr/share/MySQL -u ..但它再次拋出錯誤「/ usr/share/MySQL」是一個目錄,並且「load:command not found」 – user2376510 2013-05-13 06:50:04

0

您可以使用使用-e的MySQL --execute選項。


mysql -u $MYSQL_USERNAME -p$MYSQL_PASSWORD -D $MYSQL_DATABASE -e "load data local infile '$FILE_TR_HI' into table trans_hist_test fields terminated by ',' lines terminated by '\r\n'" 
+0

它沒有工作!我得到了這個錯誤MySQL Ver 14.14 Distrib 5.1.69,對於redhat-linux-gnu(x86_64)使用readline 5.1 版權所有(c)2000,2013,Oracle和/或其附屬公司。版權所有。 Oracle是Oracle Corporation和/或其子公司 的分支機構的註冊商標。其他名稱可能是其各自的 所有者的商標。 用法:mysql [OPTIONS] [database] - ?, --help顯示此幫助並退出。 -I,--help同義詞 - ? --auto-rehash啓用自動重新哈希。一個不需要使用 'rehash'來獲得表格和字段的完成, – user2376510 2013-05-13 09:25:39

+0

它適用於我,它應該可以工作。你能否檢查你是否有權限「LOAD DATA」? – Anbarasan 2013-05-13 09:50:48