2016-03-08 106 views
1

我想对远程mysql数据库进行备份。我查看了很多例子,但我无法找到答案,我做错了什么。我的计算机上有我的远程数据库以外的其他名称的mysql服务器,只是想在我的计算机上创建sql文件以获得副本。 我的按钮操作执行的代码是:从远程数据库备份mysql与mysqldump进程错误

try { 
      String cs = "jdbc:mysql://db4free.net:3306/DBNAME?user=DBUSER&password=DBPASSWORD"; 
      Class.forName("com.mysql.jdbc.Driver").newInstance(); 
      Connection connection = java.sql.DriverManager.getConnection(cs); 
      String executeCmd = ""; 
      if (connection != null) { 
       executeCmd = "mysqldump -hwww.db4free.net -u DBUSER -pDBPASSWORD DBNAME > backup.sql"; 
       Process runtimeProcess = Runtime.getRuntime().exec(new String[] { "cmd.exe", "/c", executeCmd }); 
       int processComplete = runtimeProcess.waitFor(); 
       if (processComplete == 0) { 
        JOptionPane.showMessageDialog(rootPane, "OK"); 
       } else { 
        JOptionPane.showMessageDialog(rootPane, "Didn't make a copy."); 
       } 
      } else { 
       JOptionPane.showMessageDialog(rootPane, "Failed"); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
+0

重复的http://stackoverflow.com/questions/13376132/backup-mysql-database -java-code –

回答

0

该系统找不到指定的文件

尝试增加文件的路径

  executeCmd = "/usr/bin/mysqldump -hwww.db4free.net -u DBUSER -pDBPASSWORD DBNAME > backup.sql"; 
+0

不能,我得到错误 - java.io.IOException:无法运行程序“/ usr/bin/mysqldump”:CreateProcess error = 2,系统找不到指定的文件 – user2258338

+0

Where is mysqldump在你的机器上?它是否安装? – Mikpa

+0

不可以。只是建立一个* .sql文件,而不是把它放到我的本地mysql服务器中? – user2258338