Pessoal, peguei este codigo como exemplo no http://www.devmedia.com.br/fazendo-backups-do-mysql-em-java/17568, porem de acordo com a ‘saida’ ele é gerado, mas não gera o arquivo ‘.sql’.
@ViewScoped @ManagedBean public class BackupBean { // Constantes da classe private static String VERSION = "5.7.15"; private static String SEPARATOR = File.separator;
private static String MYSQL_PATH =+SEPARATOR+"usr" + SEPARATOR +"bin" + SEPARATOR;
private static String PRESENTATION = "==========================================================\n" + " Backup do banco de dados MySQL - Versao " + VERSION + "\n" + " Autor: Ewerthon \n\n" +
“==========================================================\n\n”;
private static String DATABASES = "tecnologiaDB "; private List<String> dbList = new ArrayList<String>();
public void MySQLBackup() { String command = MYSQL_PATH + "mysqldump"; String[] databases = DATABASES.split(" "); for (int i = 0; i < databases.length; i++) dbList.add(databases[i]); // Mostra apresentação System.out.println(PRESENTATION); System.out.println("Iniciando backups...\n\n"); // Contador int i = 1; // Tempo long time1, time2, time; // Início time1 = System.currentTimeMillis(); for (String dbName : dbList) { ProcessBuilder pb = new ProcessBuilder( command, "--user=root", "--password="senha", dbName, "--result-file= " +SEPARATOR +"home"+ SEPARATOR +"everton" + SEPARATOR + dbName + ".sql"); System.out.println( "--result-file=" +SEPARATOR +"home"+ SEPARATOR +"everton" + SEPARATOR + dbName + ".sql"); try { System.out.println( "Backup do banco de dados (" + i + "): " + dbName + " ..."); pb.start(); } catch (Exception e) { e.printStackTrace(); } i++; } // Fim time2 = System.currentTimeMillis(); // Tempo total da operação time = time2 - time1; // Avisa do sucesso System.out.println("\nBackups realizados com sucesso.\n\n"); System.out.println("Tempo total de processamento: " + time + " ms\n"); System.out.println("Finalizando..."); try { // Paralisa por 4 segundos Thread.sleep(4000); } catch (Exception e) { e } System.exit(0); }}
A saida é essa abaixo;
Backup do banco de dados MySQL - Versao 5.7.15
Autor: Ewerthon
Iniciando backups…
–result-file=/home/ewerthon/tecnologiaDB.sql
Backup do banco de dados (1): tecnologiaDB …
Backups realizados com sucesso.
Tempo total de processamento: 393 ms
Finalizando…
Termino aplicativo.