SoloCodigo

Programación General => Java => Mensaje iniciado por: rodry en Martes 9 de Enero de 2007, 11:54

Título: Realizar Mysqldump Desde Java
Publicado por: rodry en Martes 9 de Enero de 2007, 11:54
hola! tengo el siguiente código que compila y se ejecuta sin problemas, el problema es que una vez ejecutado no encuentro 'prueba.sql' es decir, es como si no hiciera nada.
 
Código: Text
  1.   public class ExportTest{
  2.  
  3.   public ExportTest(){
  4.    
  5.     try {
  6.       Runtime.getRuntime().exec("mysqldump -u root almacen > prueba.sql");
  7.                        
  8.                 }catch(Exception e){
  9.       e.printStackTrace();
  10.     }
  11.   }
  12.  
  13.   public static void main(String args[]){
  14.     new ExportTest();
  15.                
  16.   }
  17. }
  18.  

Gracias por anticipado. un saludo!
Título: Re: Realizar Mysqldump Desde Java
Publicado por: rodry en Miércoles 10 de Enero de 2007, 10:55
Encontre una solución, aunque no me llega a convencer del todo, la pongo por si le pudiera valer a alguien:
Código: Text
  1.  
  2. public class ExportTest{
  3.  
  4.   public ExportTest(){
  5.    
  6.     try {
  7.       Runtime.getRuntime().exec("cmd /C start c:/copia");
  8.                 }catch(Exception e){
  9.       e.printStackTrace();
  10.     }
  11.   }
  12.  
  13.   public static void main(String args[]){
  14.     new ExportTest();
  15.                
  16.   }
  17. }
  18.  
  19.  

siendo copia un archivo .bat con lo siguiente:
Código: Text
  1.  
  2. mysqldump -u root almacen > c:\copia2sql
  3.  
  4.  

Si alguien sabe de alguna solución que sirve tanto para linux como para windows sin necesidad de cambiar nada, y si es posible sin necesidad de utilizar un archivo externo se lo agradecería. Un saludo!
Título: Re: Realizar Mysqldump Desde Java
Publicado por: silverfox en Miércoles 10 de Enero de 2007, 11:59
Hola...


A ver si te sirve lo siguiente...

http://forum.java.sun.com/thread.jspa?thre...ssageID=3411880 (http://forum.java.sun.com/thread.jspa?threadID=614787&messageID=3411880)


Suerte.



Silverfox
Título: Re: Realizar Mysqldump Desde Java
Publicado por: r589 en Miércoles 17 de Enero de 2007, 22:29
String dir="c:/Backup.sql";
     try{
       Runtime r = Runtime.getRuntime();
       Process p = r.exec("c:/mysql/bin/mysqldump.exe --add-drop-table Bd");
       InputStream is = p.getInputStream();
       BufferedReader br = new BufferedReader (new InputStreamReader (is));
       String aux = br.readLine();
       try{
           FileWriter fileout = new FileWriter(dir);
           BufferedWriter bw = new BufferedWriter(fileout);
           PrintWriter salida = new PrintWriter (bw);
           while (aux!=null){
              salida.println(aux);            
              aux = br.readLine();}
           salida.close();  
       }catch (Exception ww){
       System.out.println("Error");}
     }catch (Exception we){
     we.printStackTrace();}   

Espero te sirva, saludos