Friday, September 21, 2007

Melakukan Backup MySQL

Melakukan backup adalah penting kerana website anda boleh ditimpa masalah bila-bila masa dan anda perlu di dalam keadaan bersiap-sedia tatkala bencana menimpa.


Adakah anda melaksanakan penjagaan pengkalan data anda dengan sempurna?
Adakah anda sentiasa melakukan backup pengkalan data dan menjalankan rutin keselataman yang menyemak agar data anda sentiasa di dalam keadaan baik?

Semua jawapan kepada persoalan diatas perlu dititikberatkan oleh seseorang webmaster yang ingin menjaga kredibiliti lamanwebnya. Kerana pengkalan data yang hilang atau rosak tidak memberikan apa-apa nilai lagi kepada sesebuah website.

Meluangkan beberapa minit untuk melakukan backup pengkalan data akan mengizinkan anda meluangkan lebih banyak masa untuk menjadi lebih kreatif dan produktif melalui website anda.

Atas apa jua alasan, perkhidmatan backup pengkalan data secara dalam talian kini merupakan hal terpenting di dalam lanskap teknologi apa pun dan ia adalah satu kemestian.


Apakah perkara dan bencana utama untuk anda mempersiapkan diri melakukan backup?

Terdapat empat sebab utama yang kerap berlaku yang menyebabkan perancangan backup diperlukan.

1) Berpindah ke web-hosting yang lain
2) Website diserang penjenayah/penceroboh
3) Tables dan data menjadi korup kerana beberapa sebab
4) Kegagalan server

BAGAIMANA HENDAK MELAKUKAN AUTO-BACKUP PENGKALAN DATA

Tedapat pelbagai cara untuk melakukan backup pengkalan data anda. Walau bagaimana pun saya ingin mencadangkan anda menggunakan phpmySQLAutoBacup. Setakat ini saya melihat ia cara yang berkesan dan mudah untuk melakukan backup. Terima kasih kepada Dave dari www.dwalker.co.uk kerana skrip yang cemerlang itu.

phpMySQLAutoBackup mengautomasikan backup pengkalan data MySQL. Skrip PHP mengekspot pengkalan data anda (data dan strukturnya), memadatkannya dalam format gzip dan menghantarnya melalui email kepada anda atau anda boleh menyimpannya di folder yang anda tentukan di server. Anda boleh menjadualkan ia untuk dilaksanakan setiap hari/minggu dengan melakukan cron job melalui CPANEL.

Setelah anda memuat-turun phpMySQLAutoBackup, unzip fail-fail berkenaan. Buka fail bernama run.php menggunakan notepad/wordpad dan masukan butiran angkubah mengenai pengkalan data anda seperti:


$db
tentukan nama pengkalan data MySQL
$mysql_username
tentukan username MySQL
$mysql_password
tentukan katalaluan MySQL
$emailaddress
tentukan email dimana fail backup hendak dihantar
$save_backup_zip_file_to_server
Jika angkubah $save_backup_zip_file_to_server ditandakan 1 fail-fail backup akan disimpan di dalam folder: /phpMySQLAutoBackup/backups/
(anda perlu chmod folder ini supaya ia boleh ditulis)


Dan kemudian upload ke server. Anda perlu mengekalkan struktur dan nama fail serta foldernya yang asal.


Apabila anda menjalan skrip berkenaan, katakanlah http://www.contoh.com/phpMySQLAutoBackup/run.php
pengkalan data mysql akan secara automatik di backup dan fail zipnya akan diemailkan kepada anda atau disimpan di dalam folder backup (mengikut pilihan anda).

BAGAIMANA HENDAK MELAKUKAN CRON JOB?

Setelah mempastikan skrip berfungsi dengan sempurna kini anda boleh mengautomasikannya supaya ia melakukan backup mengikut jadual yang anda tentukan.

Ia boleh dilaksanakan menggunakan CRON JOB yang terdapat di cPanel.


Ia mempunyai dua antara-muka sebagai pilihan setelah ikon cron job itu diketik. Satu agak mudah dan mesra pengguna sementara satu lagi untuk yang mahir dengan penggunaan bahasa UNIX. Plih yang pertama (standard) dan anda akan perolehi satu jadual untuk anda tentukan kekerapan dan bila hendak melakukan cron job itu.


1) Masukkan email anda di mana fail backup hendak dihantar
2) jalan skrip run.php dengan arahan contohnya

php /home/[your username]/public_html/phpMySQLAutoBackup/backups/run.php


3) Tentukan masa / kekerapan backup (contoh backup harian)

1. Setkan Minute : 0
2. Setkan Hour(s) : 0 = 12 AM/Midnights
3. Setkan Day(s) : Every Day
4, Setkan Month(s) : Every Month
5. Setkan Weekday(s) : Every Weekday

Selepas itu klik Save Crontabs.

Apabila sampai waktunya pada setiap hari pengakalan data MySQL anda akan di backup dan dihantar ke email/folder anda.

PERINGATAN:

1) Jangan lakukan backup mengikut minit atau jam kerana ia akan menjadikan pelayaran lamanweb anda lembab sewaktu backup dilaksanakan. Itu sebab mengapa anda perlu setkan minit dan jam sebagai sifar (0).
2) Jangan pilih masa waktu siang kerana waktu itu pengunjung mungkin ramai di website anda dan perlaksanaan backup mungkin boleh menjejaskan kelancaran pelayaran.
3) Sedapat-dapatnya hantar ke email yang berbeza dengan server yang digunakan oleh website anda, kerana jika server bermasalah anda masih boleh menggunakan backup dari email yang anda terima dari server yang lain.
4) Walaupun cPanel ada mempunyai Cron Job, namun ia tidaklah digalakkan sangat untuk digunakan. Adalah lebih baik anda melalukan kerja backup secara manual dengan menjalankan skrip phpMySQLAutoBackup kerana jika terlalu ramai di server menggunakan cron-job maka pertembungan perlaksanaan backup di MySQL yang serupa menjadikan server pangkalan data lebih perlahan.

No comments: