2011-03-14 66 views
0

我通過網頁將我的MySQL數據庫備份到特定的文件夾,例如d:\backup\。備份沒有問題,但我無法使用以下命令恢復它。如何通過Java恢復MySQL轉儲文件?

Runtime.getRuntime().exec("mysql -u root -p root sgapp < D:/backup/bkup.sql"); 

原因是什麼,我該如何解決這個問題?

+0

閱讀:http://www.javaworld.com/jw-12-2000/jw-1229-traps.html全部4頁。 – BalusC 2011-03-14 11:48:24

回答

1
Runtime.getRuntime().exec("mysql -u USERNAME -pPASSWORD DBNAME < D:/backup/bkup.sql"); 

心靈的缺乏-p和密碼字符串之間差距。

+1

或缺少它 – 2011-03-14 04:39:55

+0

它似乎沒有工作.....但它從命令提示符執行時工作... – pheonix4eva 2011-03-14 04:55:49

+0

@ pheonix4eva - 這是一個明顯的錯誤。但是,我認爲您還應該包含從JSP嘗試獲取的錯誤的堆棧跟蹤。這將有助於深入挖掘。 – Nishant 2011-03-14 05:06:23

1

這對我的作品:

Runtime.getRuntime().exec("cmd /c start mysqldump -u root -ptestpsw workone -rscript_name.sql"); 

使用-rfilename.sql,而不是重定向<。 也許它也適用於你。