[英]How to backup and restore sql database when I clicked netbeans jbutton
我想知道如何實現這個功能,當我想在我的程序中備份我的數據庫時,只需單擊一下數據庫就可以保存文檔,當我單擊恢復按鈕時,它應該自動恢復數據庫。
我的jFrame程序設計這是主界面代碼
package bankapplication;
公共類 MainInterface 擴展 javax.swing.JFrame {
public MainInterface() {
initComponents();
setLocationRelativeTo(null);
setIcon();
}
}
如果你知道如何解決這個問題,請幫助我做到這一點。 謝謝..
java.lang.Runtime.exec(String command)
方法在單獨的進程中執行指定的string command
您可以使用以下查詢import and export mysql database
備份: mysqldump -u root -p[root_password] [database_name] > dumpfilename.sql
恢復:# mysql -u root -p[root_password] [database_name] < dumpfilename.sql
我對我的程序所做的是使用 java 運行時執行上述查詢。 查詢我已經創建了: - "mysqldump -u " + "root" + " -p" + "password" + " databasename -r " + javaPath"
更換password
與密碼,並更換databasename
與數據庫名稱,並嘗試代碼並告訴我們您在那之后遇到的錯誤。
execute a back up
public void executeBackUp(){
try {
String javaPath = "filePath";
Runtime.getRuntime().exec("mysqldump -u " + "root" + " -p" + "password" + " databasename -r " + javaPath);
JOptionPane.showMessageDialog(this, "Backup File Created.", "Done", 1);
} catch (Exception e) {
e.printStackTrace();
}
}
restore a backup
public void restore(){
try {
String path = "filepath";
String arrayCommand[] = new String[]{"mysql", "databasename", "-u", "root", "-p" + "password", "-e", " source " + path};
Process runtimeProcess = Runtime.getRuntime().exec(arrayCommand);
int processStatus = runtimeProcess.waitFor();
if (processStatus == 1) {
System.out.println("failed");
} else if (processStatus == 0) {
System.out.println("success");
}
} catch (Exception e) {
e.printStackTrace();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.