Backup dan Restore Database MySQL dengan Java

source code dapat di copy dengan mengarahkan cursor ke area source code kemudian mengklik tombol dengan icon kertas putih dan <>
adanya fasilitas backup dan restore database pada aplikasi yang kita bangun tentu akan menjadikan program kita menjadi lebih user friendly sebab terkadang memang perlu membuat suatu backup dari data yang kita miliki untuk mencegah terjadinya hal-hal yang tidak diinginkan semisal data corrupt atau yang lain. Fasilitas backup data akan membantu user untuk membuat salinan dari database yang disimpan dalam sebuah file *.sql sedangkan fasilitas restore memungkinkan user untuk mengembalikan data dari hasil backup ke database.

Pada contoh ini saya masih menggunakan contoh projek sebelumnya. Untuk membuat proses bacukp sendiri dapat kita lakukan dengan memanggil file binary dari mysql yaitu mysqldump.exe. karena disini saya menggunakan xampp maka lokasi file mysqldump-nya berada di C:\xampp\mysql\bin pada folder tersebut terdapat bebeapa file binary termasuk mysqldump.exe adapun coding backup yang sering saya gunakan seperti berikut
Process p = null;
 try {
 Runtime runtime = Runtime.getRuntime();
// Jika MySQL Tanpa Password
 p = runtime.exec("C:/xampp/mysql/bin/mysqldump -uroot --add-drop-database -B nama_database -r " + "D:/" + "backup" + ".sql");
// Jika MySQL Menggunakan Password
 p = runtime.exec("C:/xampp/mysql/bin/mysqldump -uroot -ppass_mysql --add-drop-database -B nama_database -r " + "D:/" + "backup_restore" + ".sql");
int processComplete = p.waitFor();

if (processComplete == 0) {
System.out.println("Backup created successfully!");
} else {
System.out.println("Could not create the backup");
}
} catch (Exception e) {
e.printStackTrace();
}
Sedikit berbeda dengan backup untuk proses restore jika menggunakan file mysql.exe yang berada di folder C:\xampp\mysql\bin adapun coding untuk proses restore ini sebagai berikut
String dbUserName="root";
String dbPassword="";
// lokasi dan file sql hasil backup
String source="D:/backup.sql";
String[] restoreCmd = new String[]{"C:/xampp/mysql/bin/mysql ", "--user=" + dbUserName, "--password=" + dbPassword, "-e", "source " + source};
 
        Process runtimeProcess;
        try {
 
            runtimeProcess = Runtime.getRuntime().exec(restoreCmd);
            int processComplete = runtimeProcess.waitFor();
 
            if (processComplete == 0) {
                System.out.println("Restored successfully!");
            } else {
                System.out.println("Could not restore the backup!");
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
source code dapat di copy dengan mengarahkan cursor ke area source code kemudian mengklik tombol dengan icon kertas putih dan <>

Share this

Related Posts

Previous
Next Post »

1 comments:

comments
12 December 2015 at 13:35 delete

Terima kasih. Teruslah menulis untuk membantu banyak orang...

Reply
avatar

bantu kami untuk lebih baik; jika ada hal yang kurang jelas atau broken link silahkan masukan komentar anda kami akan segera menanggapi dan memperbaikinya. login ke akun gmail anda untuk menampilkan form komentar.