Boa Tarde Galera, Eu estou desenvolvendo uma aplicação Java para um projeto de TCC e eu preciso fazer um restore no meu banco de dados através dessa aplicação, consigo executar o backup porém o restore não funciona e eu nao tenho nenhum retorno de erro… Estou usando a class Process para executar o comando CMD
Executando direto pelo CMD ele funciona perfeitamente, porém pelo java não, se alguém puder me ajudar agradeceria muito.
Segue o código…
comando = "C:/wamp/bin/mysql/mysql5.6.17/bin/mysql.exe --user=root --password= <" + arquivo;
private class ExecutaRestore implements Runnable {
String comando;
String arquivo;
public ExecutaRestore(String comando, String arquivo) {
this.comando = comando;
this.arquivo = arquivo;
}
public void run() {
Process p = null;
try {
txtResultRestore.setText("Restaurando Banco de dados...\n Salvo em: \n" + arquivo);
Runtime runtime = Runtime.getRuntime();
p = runtime.exec(comando);
int processComplete = p.waitFor();
if (processComplete == 0) {
txtResultRestore.setText(txtResultRestore.getText() + "\n\nRestauração realizada com sucesso...\n" + arquivo);
} else {
txtResultRestore.setText(txtResultRestore.getText() + "\n\nErro ao restaurar... \nTente novamente ou contate o administrador do banco de dados");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
O ProcessComplete retorna 1, cai no else e nao restaura…