[英]Error in backup of MySQL from Java
我已經開發了一個Java應用程序,它已經處於最后階段。
問題是我無法使用Runtime.getRuntime().exec()
執行mysqldump。
try {
String[] command = new String[] {
"cmd.exe",
"/c",
"mysqldump --host=" + host + " --user=" + dbuser + " --password=" + dbpass + " " + dbname + " > " + filename
};
Process runtimeProcess = Runtime.getRuntime().exec(command);
int ProcessComplete = runtimeProcess.waitFor();
if (ProcessComplete == 0) {
JOptionPane.showMessageDialog(null, "Database backup has been done successfully");
}
else {
JOptionPane.showMessageDialog(null, "Database backup was unsuccessfull");
JOptionPane.showMessageDialog(null, command);
}
}
catch (IOException | InterruptedException exc) {
Logger.getLogger(Backup.class.getName()).log(Level.SEVERE, null, exc);
}
誰能幫我這個?
我在Windows中嘗試了您的代碼,對我來說效果很好。
打開cmd
,鍵入mysqldump
然后按Enter。
如果執行成功,則意味着如果數據庫配置正確,則代碼應該可以正常工作。
如果您無法將'mysqldump' is not recognized as an internal or external command
則必須在環境變量中設置MySQL路徑,或者在Java代碼中為mysqldump
指定完整路徑,如下所示:
String[] command = new String[] {
"cmd.exe",
"/c",
"c://mysql/bin/mysqldump --host=" + host + " --user=" + dbuser + " --password=" + dbpass + " " + dbname + " > " + filename
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.