| |||
mi backup no se realiza con otras bsase de datos Hola amigos acá de nuevo con otro problemita.... y es que tengo problemas al realizar el backup de mi base de datos con una base de datos externa, o sea no en localhost...... acá le dejo el código para que le echen un vistazo int resp; JFileChooser RealizarBackupMySQL = new JFileChooser(); resp=RealizarBackupMySQL.showSaveDialog(this);//JFileChooser de nombre RealizarBackupMySQL if (resp==JFileChooser.APPROVE_OPTION) {//Si el usuario presiona aceptar; se genera el Backup archivo = RealizarBackupMySQL.getSelectedFile(); txtArch.setText(archivo.getAbsolutePath()); try{ Runtime runtime = Runtime.getRuntime(); File backupFile = new File(String.valueOf(RealizarBackupMySQL.getSelecte dFile().toString())+".sql"); // '"+pasW+"' FileWriter fw = new FileWriter(backupFile); String d="C:\\Archivos de programa\\MySQL\\MySQL Server 5.1\\bin\\mysqldump --opt --host=" + servidor + " --port=3306" + " --user=" + usuario + " --password=" + pasW + " --compact --complete-insert --extended-insert --skip-quote-names" + " --skip-comments --skip-triggers facturacion1"; Process child = runtime.exec(d); InputStreamReader irs = new InputStreamReader(child.getInputStream()); BufferedReader br = new BufferedReader(irs); String line; while( (line=br.readLine()) != null ) { fw.write(line + "\n"); } fw.close(); irs.close(); br.close(); txtMensRes.setText("\n>> Archivo generado correctamente.\n"); }catch(Exception e){ txtMensRes.setText("\n>> Error no se generó el archivo por el siguiente motivo:\n"+e.getMessage()); } } else if (resp==JFileChooser.CANCEL_OPTION) { txtMensRes.setText("Ha sido cancelada la generación del Backup."); } //************************************************** ******** este me funciona a la perfección con mi base de Datos localhost pero si quiero hacerle el backup a otra base de datos que estuviese en otro servidor me dice que se ha creado el backup correctamente pero cuando le doy abrir al archivo.sql que me genera este está vacío ..... la verdad es que no tengo ni idea del porque me está pasando esto....... espero me puedan ayudar una vez mas..... estoy trabajando con netbbeans 6.8 desde una aplicación de escritorio....TODA AYUDA O CONSEJO ES BIEN RECIBIDO... GRACIAS DE ANTEMANOS...... |
| ||||
Respuesta: mi backup no se realiza con otras bsase de datos Pues si la variable "servidor" es la IP o nombre de otro servidor, debería funcionar. No estaría de más que intentaras el comando desde línea de comandos y vieras si funciona bien, puede haber otros problemas que no son de tu código, como no tener acceso a ese puerto en otro servidor por algún firewall o que el servidor de mysql del otro servidor no acepte conexiones remotas (cosa bastante habitual). Se bueno. |
| |||
mi backup no se realiza con otras bsase de datos Lo de probar con la linea de comandos no tengo ni idea si puedes darme un ejemplo de como lo puedo hacer te lo voy a agradecer muchísimo....... por otra parte el servidor al que le quiero hacer el backup si acepta conexiones remotas porque desde mi PC me puedo conctar a mi BD......solo que no me crea el archivo .sql pero está vacio... |
| ||||
Respuesta: mi backup no se realiza con otras bsase de datos Hola: Cambia esto InputStreamReader irs = new InputStreamReader(child.getInputStream()); por esto InputStreamReader irs = new InputStreamReader(child.getErrorStream()); si hay algún problema con el comando, te saldrá en el fichero el error. Se bueno. |
| |||
Respuesta: mi backup no se realiza con otras bsase de datos le agregé este codigo para ser mas especifico Process child = runtime.exec("C:\\Archivos de programa\\MySQL\\MySQL Server 5.1\\bin\\mysqldump --opt --host=" + servidor + " --port=" + 3306 + " --user=" + usuario + " --password=" + pasW + " --compact --complete-insert --extended-insert --skip-quote-names" + " --skip-comments --skip-triggers "+ "facturacion1" ); pero me pone en el fichero de salida el siguiente error. mysqldump: Got error: 1044: Access denied for user 'info07'@'%' to database 'facturacion1' when using LOCK TABLES ¿alguna sugerencia? |
| ||||
Respuesta: mi backup no se realiza con otras bsase de datos Da la impresión de que el usuario info07 no tiene permisos para bloquear las tablas para el backup. Dale permisos en MySQL o usa otro usuario. Se bueno. |
| |||
Respuesta: mi backup no se realiza con otras bsase de datos yo hice un backup a esa misma Bd(facturacion1) pero con un código en php desde mi PC hasta donde está es servidor de MySQL instalado...esto me dice que si tiene permisos ... solo que no se porque me de ese error con mi código en java... |
Etiquetas: |