如何从Java备份mysql数据库?

如何使用Java程序备份MySQL数据库?

从java代码执行mysqldump

例:

备份:

 Runtime.getRuntime().exec("mysqldump -u USERNAME -pPASSWORD DBNAME > /path/to/location/backup.sql"); 

恢复:

 Runtime.getRuntime().exec("mysql -u USERNAME -pPASSWORD < /path/to/location/backup.sql"); 
 Runtime.getRuntime().exec("mysqldump -uroot -psome_password database_name > /whereever/dump_todays_date.sql"); 
 Backup: /******************************************************/ //Database Properties /******************************************************/ String dbName = “dbName”; String dbUser = “dbUser”; String dbPass = “dbPass”; /***********************************************************/ // Execute Shell Command /***********************************************************/ String executeCmd = “”; executeCmd = “mysqldump -u “+dbUser+” -p”+dbPass+” “+dbName+” -r backup.sql”; } Process runtimeProcess =Runtime.getRuntime().exec(executeCmd); int processComplete = runtimeProcess.waitFor(); if(processComplete == 0){ out.println(“Backup taken successfully”); } else { out.println(“Could not take mysql backup”); } Restore: /******************************************************/ //Database Properties /******************************************************/ String dbName = “dbName”; String dbUser = “dbUser”; String dbPass = “dbPass”; /***********************************************************/ // Execute Shell Command /***********************************************************/ String executeCmd = “”; executeCmd = new String[]{“/bin/sh”, “-c”, “mysql -u” + dbUser+ ” -p”+dbPass+” ” + dbName+ ” < backup.sql” }; } Process runtimeProcess =Runtime.getRuntime().exec(executeCmd); int processComplete = runtimeProcess.waitFor(); if(processComplete == 0){ out.println(“success”); } else { out.println(“restore failure”); } 

如果您正在寻找窗户版本?

这可能有所帮助:

我如何从mysql数据库备份和恢复日期

看到这个论坛,你可以得到帮助

http://www.programmingforums.org/thread19446.html