Tips Pindah Hosting #2 : Dumping MySQL Database Ukuran Besar

Posted by

Catatan : Tulisan ini merupakan bagian kedua dari seri tips pindah hosting. Bagian pertama dapat dibaca disini.

Salah satu problem utama yang saya alami ketika melakukan pemindahan hosting adalah melakukan dumping data MySQL. Hal ini tidak perlu saya alami andaikata saya memiliki akses SSH full ke server hosting atau saya memiliki akses WHM (WebHost Manager) yang memiliki fasilitas Backup & Restore account.

Masalahnya, sebagian besar hosting tidak menyediakan fasilitas tersebut kecuali menggunakan layanan tambahan. Kalaupun mereka menyediakan tools untuk melakukan penanganan data, biasanya mereka menyediakan cpanel.

Cpanel yang saya gunakan memang memiliki kemampuan backup dan restore namun kemampuan yang ada hanya untuk melakukan restore data, tidak termasuk database dan isinya. Kalaupun ada fasilitas restore database, butuh waktu yang cukup lama melakukannya karena kita harus melakukan proses upload file SQL dan melakukan eksekusinya.



Sekedar contoh, blog pak Yusril Ihza Mahendra yang relatif tidak banyak isinya memiliki besar file SQL > 10 MB. Website openSUSE Indonesia memiliki file SQL > 30 MB sedangkan blog-blog pribadi yang saya miliki besar file SQL-nya mencapai kisaran 50-60 MB. Saat saya mencoba menggunakan PHPMyAdmin, batasan maksimal file SQL yang bisa dieksekusi adalah 512 KB. Olala.

Untunglah, setelah browsing sebentar saya bertemu dengan script kecil dan simple dalam bentuk script PHP yang mampu melakukan proses dump file SQL besar dalam waktu singkat. File SQL untuk blog saya dengan besar file > 50 MB bisa dieksekusi kurang dari 2 menit dan hasilnya benar-benar bagus, tak ada masalah dan langsung dapat saya gunakan.

Penggunaan scriptnya juga cukup mudah, kita hanya perlu memodifikasi konfigurasi koneksi database didalam script dan kemudian melakukan upload file php tersebut ke lokasi hosting. Untuk menghindari proses upload file dump SQL yang lambat, saya melakukan akses SSH ke server DreamHost saya, melakukan ekstrak hasil backup dari Cpanel dan mengambil file SQL yang hendak saya dump.

File SQL tersebut kemudian saya kirim ke web hosting yang baru menggunakan akses FTP dan diletakkan difolder yang sama dengan lokasi script. Cara ini menghindarkan saya dari proses download dan upload yang menyita waktu.

Berikut adalah cara penggunaan script :

  1. Download script bigdump.php dari lokasi ini
  2. Ekstrak dan edit file bigdump.php, sesuaikan dengan konfigurasi database (host, user name, password, database dan encoding). Khusus untuk encoding, gunakan encoding utf8 (ganti $db_connection_charset = ”; menjadi $db_connection_charset = ‘utf8′;)kecuali database anda menggunakan setting charset yang lain.

    1.// Database configuration$db_server = 'localhost';
    2.$db_name = '';
    3.$db_username = '';
    4.$db_password = '';
  3. Upload ke hosting bersama file SQL yang hendak didump
  4. Klik link Start Import. Jangan lupa check sekali lagi untuk memastikan bahwa file SQL tersebut sudah tepat, jangan sampai salah timpa/isi database :-)
    bigdump1
  5. Proses dump database akan langsung selesai dalam waktu relatif singkat.
    bigdump2
  6. Jika anda mengalami error, misalnya terkait dengan complain mengenai delimiter (biasanya terjadi jika menggunakan sql dump dari hasil export/backup cpanel), lakukan penghapusan pada baris seperti berikut ini :

    01.DELIMITER ;;
    02.DELIMITER ;
    03./*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
    04.
    05./*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
    06./*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
    07./*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
    08./*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
    09./*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
    10./*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
    11./*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
    12.
    13.-- Dump completed on 2009-05-11 0:57:57

Sebagai backup script, saya membuat salinan scriptnya disini : bigdump




FOLLOW and JOIN to Get Update!

Social Media Widget SM Widgets




Demo Blog NJW V2 Updated at: Monday, July 27, 2009

0 comments:

Post a Comment