Guest User

Untitled

a guest
Aug 10th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.76 KB | None | 0 0
  1. I cannot integrate with mysqldump.exe on java
  2. public String getServerDumpData()
  3. {
  4. new Database("Database.ini");
  5. StringBuilder dumpdata = new StringBuilder();
  6. String execline = "";
  7. try {
  8. if(Database.ConnectToDatabase()){
  9. // Set path. Set location of mysqldump
  10. // For example: current user folder and lib subfolder
  11. if( HelpersToolbox.IsWindows() ){
  12. execline = System.getProperty("user.dir") + "\mysql\mysqldump.exe";
  13. }else{
  14. execline = System.getProperty("user.dir") + "\lib\mysqldump.exe";
  15. }
  16. // Usage: mysqldump [OPTIONS] database [tables]
  17. // OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
  18. // OR mysqldump [OPTIONS] --all-databases [OPTIONS]
  19. String command[] = new String[]{ execline,
  20. "--host=" + Database.DbServer,
  21. "--port=" + Database.DbPort,
  22. "--user=" + Database.DbUsername,
  23. "--password=" + Database.DbPassword,
  24. "--compact",
  25. "--complete-insert",
  26. "--extended-insert",
  27. "--skip-comments",
  28. "--skip-triggers",
  29. Database.DbName };
  30.  
  31. // Run mysqldump
  32. ProcessBuilder pb = new ProcessBuilder(command);
  33. Process process = pb.start();
  34.  
  35.  
  36.  
  37. InputStream in = process.getInputStream();
  38. BufferedReader br = new BufferedReader(new InputStreamReader(in));
  39.  
  40.  
  41. int count;
  42. char[] cbuf = new char[STREAM_BUFFER];
  43.  
  44. // Read datastream
  45. while ((count = br.read(cbuf, 0, STREAM_BUFFER)) != -1){
  46. dumpdata.append(cbuf, 0, count);
  47.  
  48. }
  49. // Close
  50. br.close();
  51. in.close();
  52. }
  53.  
  54. } catch (Exception ex) {
  55.  
  56. ex.printStackTrace();
  57. return "";
  58. }
  59. return dumpdata.toString();
  60. }
  61.  
  62. pb.redirectErrorStream(true);
  63.  
  64. public boolean backupDB(String dbName, String dbUserName, String dbPassword, String path) {
  65.  
  66. String executeCmd = "mysqldump -u " + dbUserName + " -p" + dbPassword + " --add-drop-database -B " + dbName + " -r " + path;
  67. Process runtimeProcess;
  68. try {
  69.  
  70. runtimeProcess = Runtime.getRuntime().exec(executeCmd);
  71. int processComplete = runtimeProcess.waitFor();
  72.  
  73. if (processComplete == 0) {
  74. System.out.println("Backup created successfully");
  75. return true;
  76. } else {
  77. System.out.println("Could not create the backup");
  78. }
  79. } catch (Exception ex) {
  80. ex.printStackTrace();
  81. }
  82.  
  83. return false;
  84. }
Add Comment
Please, Sign In to add comment