Sepanjang pengalaman saya pribadi, hampir seluruh software yang saya kembangkan selalu mengalami perubahan database sepanjang perjalanan cycle-nya… baik saat pengembangan ataupun setelah deployment. Bagi yang sering menggunakan MySQL Workbench, tentu menyadari bahwa kita lebih sering frustasi karena fitur sinkronisasi Data Model dengan Live Database sering berakhir dengan pesan error dari Database. Bahkan saya beberapa kali memperoleh laporan perbedaan Data Model dan Live Database yang sama padahal Live Database sudah saya update manual… sungguh sangat menyesakkan.
Sejauh ini saya menduga bahwa cache dari Data Model tidak terupdate sepenuhnya, walaupun kita memperoleh pesan bahwa MySQL Workbench mencoba membaca data dari Live Database. Berbekal keyakinan ini, saya mencoba melakukan cara memutar yang agak panjang dengan tetap memanfaatkan MySQL Workbench (terutama karena tools ini gratis).

Tools yang digunakan: MySQL Workbench 5.2.33 CE

  1. Lakukan Backup Live Database melalui menu Server Administrator > Manage Import / Export > Data Export / Restore dan pilih Live Database yang hendak di backup. Jangan lupa di tick `Export to Self-Contained File` dan `Dump Stored Routines`. Mari kita namakan livedata.sql
  2. Buka Data Model yang baru melalui menu Data Modelling > Open Existing EER Model dan pilih Data Model yang diinginkan.
  3. Export Data Model ini menjadi SQL Script dengan menggunakan menu File > Export > Forward Engineer SQL Create Script. Misal kita beri nama newmodel.sql dan ikuti petunjuk di layar (Biasanya cukup Klik Next dan Next dan Finish)
  4. Selanjutnya tutup Data Model/tab yang terbuka di MySQL Workbench. Kemudian lakukan load Data Model script hasil export diatas ke dalam MySQL Workbench melalui menu Data Modelling > Create EER Model From SQL Script serta memilih file newmodel.sql
  5. Setelah proses Reverse Engineer diatas selesai, maka kita siap melakukan sinkronisasi. Buka menu File > Export > Forward Engineer SQL Alter Script. Pada bagian input file, masukkan script Backup Live Database (livedata.sql). Bagian output file dapat dikosongkan.
  6. Klik Next dan ditampilkan Script perubahan yang diperlukan. Review dan save script ke file.
  7. Tutup Data Model hasil Reverse Engineer dan jalankan Script perubahan hasil dari proses diatas di SQL Editor untuk mengaplikasikan perubahan ke Live Database

Jalannya agak panjang, namun setidaknya proses sinkronisasi (tanpa harus forward engineer) bisa dilakukan tanpa pesan error yang cukup berarti.

2 Comments

  1. saya mengalami kesulitan untuk export model as image, mas pernah mengalami hal ini gak ??? mohon di share kalo sudah 🙂
    skedar info saya pakai mysql-workbench-1.1.10-alpha-win32-noinstall.
    karena yg terbaru harus melakukan installasi VS2010(*kalo gak salah yg pernah saya coba)
    thx b4

    best regards

    Tuan Muda Heri

Leave a Reply to donie Cancel reply

Your email address will not be published. Required fields are marked *