2016-04-14 35 views
0

我想知道如何使這個功能, 當我想在我的程序備份我的數據庫只需一次點擊數據庫應該保存該文件,當我點擊恢復按鈕它應該自動恢復數據庫。如何備份和恢復sql數據庫,當我點擊netbeans jbutton

我的編程設計由JFrame 這是主要的接口代碼

package bankapplication; 

公共類MainInterface擴展javax.swing.JFrame中{

public MainInterface() { 
    initComponents(); 
    setLocationRelativeTo(null); 
    setIcon(); 

    } 
}     

如果你知道如何解決這個問題,請幫助我做到這一點。 謝謝..

+1

我注意到你是新來的。您可能想向我們解釋您嘗試過的內容,而不是要求我們爲您做這件事。堆棧溢出是關於幫助你的,但首先你需要自己去刺探問題。 – hsanders

回答

0

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

什麼IM使用我的程序執行上面的查詢使用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(); 

       } 
} 
+0

感謝您幫助我的休假 –

+0

感謝您幫助我的麻煩,我是java程序員的初學者。所以我不是沒有什麼是filePath - mysqldump -u root -p&javaPath請明確指出這些問題。這對我來說是很有用的謝謝 –

+0

備份方法中的文件路徑是你想要備份保存的地方。 恢復方法中的fie路徑是數據庫後備文件存儲的地方, – Priyamal