Ir al contenido principal

Restaurar backup MySQL desde Java


PLATAFORMA WINDOWS:

Variables:

public String bd = "base";
public static String login =null;
public static String password =null;
public String url = "jdbc:mysql://localhost/"+bd;
public String urlcero = "jdbc:mysql://localhost/";
public Connection conn = null;
public Statement stm;
public static File nombrebackup=null;
public static File rutabackup=null;
public static int selecGuardaBack=0;
public static int selecRestauraBack=0;

Nota: Los condicionales selecGuardaBack son solo para determinar si se escogió una ubicación en JOpenDialog.

Funcion Crear Backup:

public void CrearBackup(){
  if (selecGuardaBack==1){
     Runtime rt = Runtime.getRuntime();
       try {
          String command = "mysqldump --opt -u"+login+" -p"+password+" "+bd+" -r"+rutabackup+".sql";
            rt.exec(command);
        JOptionPane.showMessageDialog(null,"Backup creado exitosamente!");
   } catch (IOException ex) {ex.printStackTrace();}
}
else if (selecGuardaBack==0){JOptionPane.showMessageDialog(null,"No se creo ningún archivo de backup!");}
}

Función Restaurar Backup:

public void RestaurarBackup(){
Statement sentencia = null;
Connection coneccionini = null;
conectar();
if (selecRestauraBack==1){
     if (conn!=null){
          try {
               coneccionini = DriverManager.getConnection(urlcero, login, password);
               sentencia = coneccionini.createStatement();
               String comsSQLborra = "DROP DATABASE " + bd;
               sentencia.executeUpdate(comsSQLborra);
               coneccionini = DriverManager.getConnection(urlcero, login, password);
               sentencia = coneccionini.createStatement();
               String comsSQL = "CREATE DATABASE "+bd;
               sentencia.executeUpdate(comsSQL);
               Process child = Runtime.getRuntime().exec("cmd /c mysql --password="+password+" --user="+login+" "+bd+" < " +nombrebackup);
            JOptionPane.showMessageDialog(null,"Backup restaurado exitosamente!");
         } catch (IOException ex) {}
      catch (SQLException ex) {}
}else if (conn==null){
try {
   coneccionini = DriverManager.getConnection(urlcero, login, password);

   sentencia = coneccionini.createStatement();
    String comsSQL = "CREATE DATABASE "+bd;
     sentencia.executeUpdate(comsSQL);
      Process child = Runtime.getRuntime().exec("cmd /c mysql --password="+password+" --user="+login+" "+bd+" < " +nombrebackup);
        JOptionPane.showMessageDialog(null,"Backup restaurado exitosamente!");
     }catch (IOException ex) { }
 catch (SQLException ex) { }
}
 }else if (selecRestauraBack==0){
     JOptionPane.showMessageDialog(null,"No se seleccionó ningun archivo de Backup!");
 }
}


Muy pronto Restaurar backup MySQL desde Plataforma Linux...
Deja tu comentario o agradecimiento...

Comentarios

  1. Muchas gracias, me fue muy util!!

    ResponderEliminar
  2. LO APLICARE HABER SI FUNCIONA, SI ME FUNCIONA O CUALQUIER DUDA TE PREGUNTARE CAMARADA VA!

    ResponderEliminar
  3. hola perdona soy nuevo en esto podrias por favor poner el codigo entero del programa es que me hago un poco de lio o si quieres me podrias agregar al skype y te muestro como voy lo que tengo echo y donde me da el fallo por que basicamente mi problema es cargar el archivo sql desde java ya que desde consola no hay problema pero desde java parace haverlos todos

    he subido mi proyecto a mediafire por favor ayudame http://www.mediafire.com/?pjoae9bqtuqo3cs
    mi skype es "yo_lestat"

    ResponderEliminar
    Respuestas
    1. Hola, puedes descargarte esta aplicación es de almenos unos 5 años pero tiene la funcionalidad de backup y restore que necesitas y tambien es con MySQL:

      https://www.box.com/s/850f5c5bab7dbab52b3d

      Prueba y me cuentas a ver si te sirvió.

      Jeison Nisperuza

      Eliminar
  4. No anda esa shit dice restaurado correctamente y no restaura nada T.T queda vacia sin tablas la base de datos t.t

    ResponderEliminar
    Respuestas
    1. este código funciona perfectamente puede ser un error con algun dato de la conexión verifica esto y nos cuentas.

      Eliminar
  5. el arciho uqe subiste tiene error cuando lo desacargas esta dañado

    ResponderEliminar
    Respuestas
    1. El archivo descarga bien ya lo he probado con internet explorer mira la imagen que te hice para que tengas una guía.

      http://www.mediafire.com/view/?hnja8mvbd478m25

      Eliminar
  6. sigo teniendo problemas n ose que hacer u.u, me crea el backup pero n ome restaura

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Fireworks CS3 portable

Para que hagas los logos, botones e imagenes para tus aplicaciones facil y rapido... ¿Qué es Fireworks? Adobe Fireworks es una aplicación en forma de estudio (basada en la forma de estudio de Adobe Flash ), pero con más parecido a un taller destinado para el manejo híbrido de gráficos vectoriales con Gráficos en mapa de bits y que ofrece un ambiente eficiente tanto para la creación rápida de prototipos de sitios Web e interfaces de usuario, como para la creación y Optimización de Imágenes para web. Originalmente fue desarrollado por Macromedia , compañía que fue comprada en 2005 por Adobe Systems . Fireworks está disponible de forma individual o integrado en Adobe CS3/CS4/CS5 y por tanto ha sido diseñado para integrarse con otros productos de Adobe, como Dreamweaver y Flash . Integración con Adobe Flash La integración con Adobe Flash se ha ido reduciendo paulatinamente desde que Flash, en su versión 7, integró la herramienta PolyStar que hace un polígono

Pasar de una ventana a otra en java

Hola a todos en esta oportunidad estamos postiando algo que cuando empezamos con java es muy necesario y es como pasar de una ventana a otra, ya sea JDialog o JFrame; creados en tiempo de ejecucion o en aplicaciones de escritorio: Para llamar a un JDialog:        JDialog1 dialogo = new JDialog1 ( this , true );        dialogo . show (); y para cerrar un JDialogo de una plicacion de escritorio se puede utilizar:        dispose (); Para llamar a un JFrame:        JFrame1 frame = new JFrame1 ();        frame . show (); Para cerrar un JFrame de una plicacion de escritorio:                 dispose ();   o tambien: System. exit (0); y si se contruye a partir de la clase JFrame se coloca el siguiente codigo en la parte publica del documento:       setDefaultCloseOperation ( EXIT_ON_CLOSE ); Espero los siguientes ejemplos les sean de mucha ayuda... Deja tu comentario o agradecimiento.

Limitar texto con CSS

HTML: <span class= "text" > Hello world this is a long sentence </span> CSS: .text {   display : block ;   width : 100px ;   overflow : hidden ;   white-space : nowrap ;   text - overflow : ellipsis; }  RESULTADO: Hello world t...