Assalamu'alaikum semua...
kali ini saya akan berbagi cara membuat aplikasi Backup dan Restore Database MySql menggunakan Delphi, pada kali ini saya menggunakan RAD Studio 10.4 dan MySQL 5.1
sebelumnya kita bahas sedikit kegunaan dari membuat aplikasi ini, #curhat jadi berdasarkan pengalaman saya yang suka oprek system sering kali mengalami hal yang seharusnya tidak terjadi yaitu LUPA BACKUP DATABASE sementara system windows tidak bisa di jalankan lagi, dan terpaksa instal ulang windows nya.
Sebeneranya masih bisa diselamatkan jika punya tool seperti Live Windows, Hire Boot, Windows Tiny atau live distro linux. tapi berhubung saya tidak pernah menyiapkan hal itu jadi kepaksa buat install ulang langsung. dari pengalaman ini lah akhirnya berinisiatif membuat aplikasi backup restore database mysql.
Source : Octa Cinta Delphi Blog
Oke cukup untuk curhatnya kita langsung saja yaps ^_^
Bahan yang di butuhkan
- Delphi (disini saya menggunakan RAD Studio 10.4)
- MySql 5.1 (link download ada di bawah)
Silahkan buka Delphi dan buat sebuah aplikasi baru, kemudian siapkan
Form Restore Database
kalian bisa membuat Proses Backup dan Restore dalam 1 form saja atau di bedakan form sesuai selera aja ya yang penting aplikasi nya jalan. untuk contoh saya membuat dalam 2 form
- 3 Buah Button
- Button Dir = untuk mencari lokasi file yang akan di backup
- Button Proses = untuk memproses backup
- Button Close = untuk keluar dari aplikasi
- 1 Editbox
- nantinya akan menampilkan lokasi/letak file backup kita
- 1 Open Dialog (disini saya menggunakan devexpress open dialog, bisa menggunakan open dialog bawan)
- DefaultExt : sql
- Filter : *.sql
- InitialDir : bisa kalian isi D:\[folder] atau kalian mau kosongkan agar nanti bisa bebas milih
- Name : (sesuaikan saja)
oke sekarang masuk ke bagian codingnya
Tambahkan ShellApi pada uses cek gambar diatas yaps ^_^
Script Tombol Dir
procedure TForm1.BitBtn1Click(Sender: TObject);Script Tombol Proses
begin
dxopen.Execute;
edit1.Text:=dxopen.FileName;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
ShellExecute(self.Handle,pchar('open'),
PCHAR('mysql'),
PCHAR('-uUSER -pPASSWORD -h localhost -e "drop database if exists NAMADATABASE; '+
'create database NAMADATABASE;use NAMADATABASE;\. "'+edit1.Text+'""'),nil,SW_HIDE);
if MessageDlg('Proses Import file '+' '+dxopen.FileName+' Berhasil ?',mtCustom,[mbYes,mbCancel], 0)=mrYes then
BEGIN
close;
END;
end;
silahkan ubah USER, PASSWORD dan NAMADATABASE yang di bold dengan database kalian
Contoh :
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
ShellExecute(self.Handle,pchar('open'),
PCHAR('mysql'),
PCHAR('-uroot -pijinmasuk123 -h localhost -e "drop database if exists dbinventory23; '+
'create database dbinventory23;use dbinventory23;\. "'+edit1.Text+'""'),nil,SW_HIDE);
if MessageDlg('Proses Import file '+' '+dxopen.FileName+' Berhasil ?',mtCustom,[mbYes,mbCancel], 0)=mrYes then
BEGIN
close;
END;
end;
jika kalian tidak menggunakan Password untuk database maka scriptnya seperti di ini
ShellExecute(self.Handle,pchar('open'),Contoh :
PCHAR('mysql'),
PCHAR('-uUSER -h localhost -e "drop database if exists Database; '+
'create database Database;use Database;\. "'+edit1.Text+'""'),nil,SW_HIDE);
ShellExecute(self.Handle,pchar('open'),
PCHAR('mysql'),
PCHAR('-uroot -h localhost -e "drop database if exists dbinventory23; '+
'create database dbinventory23;use dbinventory23;\. "'+edit1.Text+'""'),nil,SW_HIDE);
Hasilnya akan seperti ini
Form Backup Database
Script Tombol Dir
procedure TFBackupDB.SpeedButton1Click(Sender: TObject);Script Tombol Proses Jika Menggunakan Password
begin
dxsave.Execute;
edit1.Text:=dxsave.FileName;
end;
procedure TFBackupDB.BitBtn1Click(Sender: TObject);
begin
//Script Execute
ShellExecute(self.Handle, PCHAR('open'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump.exe'),
PCHAR('-uUser -pPassword -h localhost -R -r "'+edit1.Text+'" Database'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.1\bin'),
SW_SHOW);
Application.MessageBox('Database Berhasil Di Backup','Info', mb_Ok + Mb_ICONINFORMATION);
end;
Contoh :
procedure TFBackupDB.BitBtn1Click(Sender: TObject);
begin
//Script Execute
ShellExecute(self.Handle, PCHAR('open'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump.exe'),
PCHAR('-uroot -pijinmasuk123 -h localhost -R -r "'+edit1.Text+'" dbinventory23'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.1\bin'),
SW_SHOW);
Application.MessageBox('Database Berhasil Di Backup','Info', mb_Ok + Mb_ICONINFORMATION);
end;
Script Tombol Proses Jika Tanpa Password
ShellExecute(self.Handle, PCHAR('open'),Contoh :
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin\mysqldump.exe'),
PCHAR('-uUser NamaServer -R -r "'+edit1.Text+'" Database'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin'),
SW_HIDE);
ShellExecute(self.Handle, PCHAR('open'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin\mysqldump.exe'),
PCHAR('-uroot NamaServer -R -r "'+edit1.Text+'" dbinventory23'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin'),
SW_HIDE);
Post a Comment for "Membuat Aplikasi Backup Restore Database MySQL dengan Delphi"