Baik restore ataupun backup pada database MySQL, selalu dapat
dilakukan dengan dua cara: memakai password atau tidak memakai password.
Sementara untuk melaksanakan perintah backup/restore tadi, dapat
dilakukan dengan berbagai cara. Cara yang akan saya jelaskan berikut ini
dapat dilakukan dengan mengetikkan perintah lewat console. Cara console
seperti ini dapat ditiru lewat Delphi dengan memanfaatkan perintah:
ShellExecute
yang di deklarasikan di unit ShellApi. Sehingga jangan lupa menyertakan ShellApi di Uses.
BACKUP DATABASE
perintah backup database pada MySQL menggunakan file bawaan dari MySQL, yaitu: mysqldump.exe. Biasanya file ini ditempatkan di direktori C:\Program Files\MySQL\MySQL Server 5.2\bin.
Penulisan perintah lewat ShellExecute tanpa password ke MySQL adalah sebagai berikut:
ShellExecute(self.Handle, PCHAR('open'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin\mysqldump.exe'),
PCHAR('-uNamaUser NamaServer -R -r "C:\TempatBackup.sql" NamaDatabase'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin'),
SW_HIDE);
Sedangkan jika memakai password adalah sebagai berikut:
ShellExecute(self.Handle, PCHAR('open'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin\mysqldump.exe'),
PCHAR('-uNamaUser -pPasswordUser NamaServer -R -r "C:\TempatBackup.sql" NamaDatabase'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin'),
SW_HIDE);
Contoh:
Jika anda akan mem-backup database pada server localhost dengan nama database
Apotik, User dan password untuk masuk ke server adalah : root root123, dan nama file
backup Apotik.sql, bentuk perintahnya adalah sebagai berikut:
ShellExecute(self.Handle, PCHAR('open'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin\mysqldump.exe'),
PCHAR('-uroot -proot123 -h localhost -R -r "D:\Apotik.sql" Apotik'),
PCHAR('C:\Program Files\MySQL\MySQL Server 5.2\bin'),
SW_SHOW);
RESTORE DATABASE
perintah backup database pada MySQL menggunakan file bawaan dari MySQL, yaitu: mysql.exe Biasanya file ini ditempatkan di direktori C:\Program Files\MySQL\MySQL Server 5.2\bin
Penulisan perintah lewat ShellExecute adalah sebagai berikut:
ShellExecute(self.Handle,pchar('open'),
PCHAR('mysql'),
PCHAR('-uNamaUser -h NamaServer -e "drop database if exists NamaDatabase; '+
'create database NamaDatabase;use NamaDatabase;\. c:\your file"'),nil,SW_HIDE);
sedangkan jika memakai password
ShellExecute(self.Handle,pchar('open'),
PCHAR('mysql'),
PCHAR('-uNamaUser -pPasswordUser -h NamaServer -e "drop database if exists NamaDatabase; '+
'create database NamaDatabase;use NamaDatabase;\. c:\your file"'),nil,SW_HIDE);
Contoh:
Jika anda akan mem-restore database pada server localhost dengan nama database
Apotik, User dan password untuk masuk ke server adalah : root root123, dan nama file
backup Apotik.sql, bentuk perintahnya adalah sebagai berikut:
ShellExecute(self.Handle,pchar('open'),
PCHAR('mysql'),
PCHAR('-uroot -proot123 -h localhost -e "drop database if exists Apotik; '+
'create database Apotik;use Apotik;\. D:\Apotik.sql"'),nil,SW_HIDE);
terima kasih mas atas tutorialnya, saya sudah praktekkan yang backup data. saya eksekusi dari delphi. ketika diklik tombol backup sekilas muncul tampilan command prompt tp setelah saya lihat folder D: kok file backupnya tidak ada ya?
BalasHapusbackup banyak database gmn ? trims
BalasHapusSetiap database mempunyai karakteristik yang berbeda-beda, sehingga algoritmanya sebanyak database yang dibuat. Kalau mau general, bisa saja dengan query kemudian disimpan sebagai XML, tetapi prosesnya lebih lambat jika jumlah data besar. Tetapi tetap saja untuk koneksi databasenya sesuai dengan databasenya
Hapussaya coba untuk backupnya udah bisa tapi kenapa buat restore nya gk ke ubah ya ke mysql nya?
BalasHapus