我通过网页将我的MySQL数据库备份到特定的文件夹,例如d:\backup\
。备份没有问题,但我无法使用以下命令恢复它。如何通过Java恢复MySQL转储文件?
Runtime.getRuntime().exec("mysql -u root -p root sgapp < D:/backup/bkup.sql");
原因是什么,我该如何解决这个问题?
我通过网页将我的MySQL数据库备份到特定的文件夹,例如d:\backup\
。备份没有问题,但我无法使用以下命令恢复它。如何通过Java恢复MySQL转储文件?
Runtime.getRuntime().exec("mysql -u root -p root sgapp < D:/backup/bkup.sql");
原因是什么,我该如何解决这个问题?
Runtime.getRuntime().exec("mysql -u USERNAME -pPASSWORD DBNAME < D:/backup/bkup.sql");
心灵的缺乏-p和密码字符串之间差距。
或缺少它 – 2011-03-14 04:39:55
它似乎没有工作.....但它从命令提示符执行时工作... – pheonix4eva 2011-03-14 04:55:49
@ pheonix4eva - 这是一个明显的错误。但是,我认为您还应该包含从JSP尝试获取的错误的堆栈跟踪。这将有助于深入挖掘。 – Nishant 2011-03-14 05:06:23
这对我的作品:
Runtime.getRuntime().exec("cmd /c start mysqldump -u root -ptestpsw workone -rscript_name.sql");
使用-rfilename.sql
,而不是重定向<。 也许它也适用于你。
阅读:http://www.javaworld.com/jw-12-2000/jw-1229-traps.html全部4页。 – BalusC 2011-03-14 11:48:24