Backup MySQL com comando java

4 respostas
T

Alguem pode me dar uma força
Acontece o seguinte, quero fazer o backup do banco de dados MYSQL a partir de um JButton.

alguém pode me ajudar , alguma sugestão pq acho o q eu estou fazendo tudo errado . to tentando fazer um metodo a qual vou chamar no ActionPerformed … …segue o meu codigo

public void Backup()

{

try{

String SQL= SELECT * INTO OUTFILE backup.txt’”;

SQL=SQL+" FIELDS TERMINATED BY ‘’";

SQL=SQL+LINES TERMINATED BY ‘\n’”;

SQL=SQL+FROM Cadastro;
MeuState.executeUpdate(SQL);								
	
			

	}
	catch(Exception exp)
	{				
			JOptionPane.showMessageDialog(null,exp.getMessage());
	}

4 Respostas

B
File diretorio = new File("C:/AlgumDiretorioParaGuardarBackup");
            File bck = new File("C:/AlgumDiretorioParaGuardarBackup/nomeDobackup000000.sql");
// os zeros é para diferenciar um backup do outro
            
            // Cria diretório
            if(!diretorio.isDirectory()) {
               new File("C:/AlgumDiretorioParaGuardarBackup").mkdir();
            } else {
            
            }
            
            // Cria Arquivo de Backup
            try {
                if(!bck.isFile()) {
                    Runtime.getRuntime().exec("cmd /c mysqldump -u<usuario> -p<senha> SeuBancoDeDados > C:/AlgumDiretorioParaGuardarBackup/nomeDoBackup000000.sql");
                } else {
                
                    while(bck.isFile()) {
                        numerodobackup++;
                        bck = new File("C:/AlgumDiretorioParaGuardarBackup/nomeDoBackup000000"+numerodobackup+".sql");
                    }

                    Runtime.getRuntime().exec("cmd /c mysqldump -u<usuario> -p<senha> seuBancoDeDados > "+bck);
                }
                } catch (IOException ex) {
                ex.printStackTrace();
                }

Tenta esse aki...
Ele gera um diretório e salva o seu banco, caso queira salvar mais de uma vez, ele incrementa 1 no nome do backup ("nomeDoBackup000000, nomeDoBackup000001...")... Flw
T

valeu pela fica amigo , mas descobri um jeito bem mais facil…
é so usar

String SQL=“SELECT * INTO OUTFILE ‘c:/yyyyy.txt’ FROM cadastro”;

T

agora alguem sabe o pq não consigo importar o arquivo
segue o comando

—>> Statement MeuState;

String SQL=DELETE FROM cadastro;

SQL=SQL + LOAD DATA INFILE c:/yyyyy.txt INTO TABLE cadastro;

MeuState.executeUpdate(SQL);

da este erro em anexo

agradeço a todos

F

nessa parte do codigo o q boto ?

MeuState.executeUpdate(SQL);

tenho q criar um metod executeUpdate?

Criado 3 de novembro de 2006
Ultima resposta 7 de jun. de 2009
Respostas 4
Participantes 3