Backup dan Restore Database MySQL Menggunakan Script
Sebagai seorang DBA tentunya kita
tidak berharap data yang tersimpan di dalam database hilang karena suatu
sebab misalnya hard disk bad sector, server hilang, kebakaran atau
yang lain. Untuk mencegah kehilangan data, tentunya kita harus
melakukan backup database secara berkala, sehingga jika terjadi
kejadian seperti di atas kita bisa langsung mengembalikan data sesuai
dengan backup database terakhir.
Backup
database MySQL sebenarnya bisa dilakukan dengan banyak cara dan juga
banyak aplikasi yang menyediakan fasilitas backup misalnya melalui
PhpMyAdmin, Navicat atau aplikasi yang lain.
Berikut
ini adalah contoh cara membackup database MySQL dengan aplikasi bawaan
MySQL sendiri yaitu aplikasi 'MySQLDump.exe'. Aplikasi ini secara
default akan disediakan pada saat anda melakukan installasi MySQL,
tepatnya berada pada directory BIN milik MySQL path.
Backup Database
Format penulisan backup menggunakan MySQLDump adalah :
mysqldump --opt -u [user] -p[password] [database]>[file_backup.sql]
· [user] Nama user database
· [password] kata sandi untuk user database tersebut. Password ini dituliskan di belakang –p tanpa ada space.
· [database] Nama database yang akan di backup
· [file_backup.sql] Nama file backup yang dihasilkan
· [--opt] Pilihan mysqldump
Backup All Database
Proses backup all database ini akan menghasilkan backup yang lengkap.
Isi backup ini adalah
· Database
· Table
· Data Table
· View
· Trigger, function / procedure
Untuk membackup seluruh database mysql, perhatikan contoh berikut :
mysqldump --all-databases -u root -p > c:\all_mysql.sql
Selanjutnya masukkan password user root
Enter password: ******
Jika anda ingin melakukan backup tanpa ada konfirmasi permintaan password anda bisa menggunakan perintah :
mysqldump --all-databases -u root -pichwan > c:\all_mysql.sql
Perhatikan gambar berikut :
Backup 1 Database
Proses
backup 1 database ini akan menghasilkan backup yang seluruh object
yang ada di dalam database yang ditunjuk saja dan nama database tidak
ikut terbackup.
Isi backup ini adalah
· Table
· Data Table
· View
· Trigger, function / procedure
Untuk membackup 1 database anda bisa menggunakan pemanggilan nama database. Contoh :
mysqldump kursus -u root -p > c:\kursus.sql
Backup object ( Table, View dan lainnya ) dari Database
Selain
backup database anda juga dapat membackup object yang ada di dalam
database seperti table, view atau yang lain. Isi backup ini adalah
sesuai dengan object yang dibackup.
Untuk
membackup 1 table atau beberapa table yang ada di dalam database anda
bisa menggunakan pemanggilan nama table yang akan dibackup dibelakang
nama database table tersebut dengan dipisah space. Contoh :
mysqldump kursus instruktur sesi -u root -p > c:\mysql_table.sql
Restore Database
Restore
database adalah mengembalikan data yang ada di database sesuai dengan
file bakcup yang ditentukan. Format penulisan restore database MySQL
adalah :
mysql -u [user] -p[password] [database] < [file_backup.sql]
· [user] Nama user database
· [password] kata sandi untuk user database tersebut. Password ini dituliskan di belakang –p tanpa ada space.
· [database] Nama database tujuan
· [file_backup.sql] Nama file backup yang direstore.
Restore All Database
Untuk melakukan restore hasil backup all database, anda bisa menggunakan database mysql sebagai database tujuan. Contoh :
mysql -u root -pichwan mysql < c:\all_mysql.sql
Restore 1 Database
Untuk
melakukan restore hasil backup 1 database anda bisa menunjuk nama
database yang beda dengan nama database yang dibackup sebelumnya. Contoh
:
mysql -u root -pichwan coba < c:\mysql_kursus.sql
Restore Object Database
Seperti
halnya restore 1 database, anda dapat merestore object database ini ke
dalam database lain selain database yang anda backup. Contoh :
mysql -u root -pichwan coba < c:\mysql_table.sql
BACKUP DATABASE SECARA AUTOMATIS
Anda
dapat melakukan backup secara berkala secara automatis dengan
menggunakan fasilitas ‘scheduled Tasks’ ( Windows ) atau ‘crontab’ (
Linux ).
Dengan cara :
1. Daftarkan directory Bin milik MySQL ( C:\MySQL\bin ) pada path.
a. Klik kanan pada My Computer – Properties, pilih tab ‘Advanced’ dan klik tombol ‘Environment Variables’
c. Tambahkan tulisan dibawah ini ( jika lokasi MySQL di drive C )
;C:\MySQL\Bin
2. Buka aplikasi Notepad, ketikkan perintah berikut :
mysqldump --all-databases -u root -pichwan > c:\all_mysql.sql
Simpan dengan nama “BACKUP_CODE.BAT” di C:\
3. Buka
scheduled Tasks dari menu Start – Control Panel - Performance and
Maintenance - scheduled Tasks. Pada area scheduled Tasks klik kanan
pilih new –scheduled tasks beri nama ‘backup_mysql’.
4. Klik kanan pada scheduled tasks yang baru kita buat – pilih properties.
Pada tab ‘Task’ isikan :
Run : C:\BACKUP_CODE.BAT
Pada tab ‘Schedule’ isikan :
Schedule Task : Daily
Start Time : 12:00 AM
5. Klik OK, jika tampil dialog password, isikan pasword sesuai dengan user yang anda gunakan.
Tidak ada komentar:
Posting Komentar