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.sqlPerhatikan gambar berikut :Backup 1 DatabaseProses 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 / procedureUntuk membackup 1 database anda bisa menggunakan pemanggilan nama database. Contoh :mysqldump kursus -u root -p > c:\kursus.sqlBackup object ( Table, View dan lainnya ) dari DatabaseSelain 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 DatabaseRestore 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 DatabaseUntuk melakukan restore hasil backup all database, anda bisa menggunakan database mysql sebagai database tujuan. Contoh :mysql -u root -pichwan mysql < c:\all_mysql.sqlRestore 1 DatabaseUntuk 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.sqlRestore Object DatabaseSeperti 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.sqlBACKUP DATABASE SECARA AUTOMATISAnda 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\Bin2. Buka aplikasi Notepad, ketikkan perintah berikut :mysqldump --all-databases -u root -pichwan > c:\all_mysql.sqlSimpan 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.BATPada tab ‘Schedule’ isikan :Schedule Task : DailyStart Time : 12:00 AM5. Klik OK, jika tampil dialog password, isikan pasword sesuai dengan user yang anda gunakan.
Tidak ada komentar:
Posting Komentar