Pessoal estou tentando executar um backup do mysql através de comando com java, mas não estou conseguindo, estou utilizando Windows XP:
segue o codigo:
String comando = "mysqldump -u root --password= --database banco > banco.sql";
Runtime.getRuntime().exec(new String[]{comando}, new String[]{}, new File("C:\\Arquivos de programas\\MySQL\\mysql-5.1.35-win32\\bin\\"));
Já tentei de varias formas, algumas não geram erro nenhum, mas não gera o arquivo, essa forma que postei printa esse erro:
Cannot run program "mysqldump -u root --password= --database banco > banco.sql" (in directory "C:\Arquivos de programas\MySQL\mysql-5.1.35-win32\bin"): CreateProcess error=2, O sistema não pode encontrar o arquivo especificado
at java.lang.ProcessBuilder.start(Unknown Source)
Desculpe invadir seu tópico sem uma solução, mas também estou necessitando de uma ajuda para executar comandos DOS em uma aplicação Java. Usei o código que o thingol passou, da seguinte forma:
try{
Runtime.getRuntime().exec (
"cmd.exe", new String[]{
"/c",
"ipconfig /all"
},
new File("C:\\WINDOWS\\system32")
);
}
catch(Exception e){
e.printStackTrace();
}
Mas nada ocorre… nenhuma Exception e nenhum resultado.
Se você conseguir solucionar seu problema, acho que consigo solucionar o meu…
Legal, funcionou parcialmente, pelo menos ele esta gerando o arquivo banco.sql, isso significa que rodou o comando, o problema é que o arquivo foi gerado vazio, (sem nada dentro).
Outra duvida, quando executo Runtime.getRuntime().exec(“cmd”); ele não deveria abrir o prompt de comando (a janelinha preta)?
Bom em todo caso vou pesquisar mais sobre o assunto, qualquer coisa posto aqui…