Backup dan Restore Database MySQL
A. 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 :
missimanakondou.wordpress.com
Membangun database dengan mysql terkadang mengalami kendala karena kesalahan mengetikan perintah dan mengeksekusi perintah sql tersebut dan ternyata berakibat data menjadi hilang atau disebabkan karena suatu sebab lainnya 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.
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 B. 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
missimanakondou.wordpress.com
Backup 1 Database
·
[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 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
C. 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’
missimanakondou.wordpress.com
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
Pilih ‘path’ pada System Variables – klik tombol Edit
missimanakondou.wordpress.com
b.
c. Tambahkan tulisan dibawah ini ( jika lokasi MySQL di drive C ); C:\MySQL\Bin
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 Start in : C:\
missimanakondou.wordpress.com
2. Buka aplikasi Notepad, ketikkan perintah berikut : mysqldump --all-databases -u root -pichwan > c:\all_mysql.sql
Schedule Task : Daily Start Time : 12:00 AM Every :1
missimanakondou.wordpress.com
Pada tab ‘Schedule’ isikan :
missimanakondou.wordpress.com
5. Klik OK, jika tampil dialog password, isikan pasword sesuai dengan user yang anda gunakan.
Referensi: http://www.percona.com/services/data-recovery-services-mysql.html http://dev.mysql.com/tech-resources/articles/recovering-from-crashes.html http://code.google.com/p/innodb-tools/ http://kb.masterweb.net/beta/index.cgi/read/Backup_dan_restore_database_MySQL