Konversi file .dbf ke MySQL

Seorang client meminta saya untuk mengkonversi sebuah file database foxpro (.dbf) ke database MySQL.  Hal ini belum pernah saya lakukan sebelumnya, sehingga saya harus mencari-cari cara yang paling efisien dan terjangkau.  Saya tidak mungkin menggunakan Foxpro hanya untuk mendapatkan kenyataan bahwa Foxpro tidak menyediakan fasilitas export langsung ke perintah SQL.

Tool yang akhirnya saya gunakan adalah tool konversi CDBF for Linux dari White Town Software.  Hasilnya adalah file teks dengan ektensi .sql.   Proses menghasilkan file teks berukuran 650MB.  Ternyata ketika mencoba import ke MySQL data-data banyak yang ‘nyampah’ dan perlu ‘dibersihkan’.   Ini merupakan problem tersendiri, teks editor mana yang cocok untuk melakukan ‘cari dan ganti’ sebuah file teks sebesar 650MB.

Setelah saya analisa data asli, akhirnya saya memutuskan untuk memecah file teks tersebut menjadi beberapa file.  Caranya dengan melakukan filter di tool CDBF dan hasil filtering itulah yang di export ke file .sql.  Proses ini menghasilkan beberapa file dan ukurannya ber variasi dari cuma 128KB sampai 360MB.

Dari Blog’s

Untuk teks editor awalnya saya mencoba KWrite namun proses membuka dan proses search and replace membutuhkan waktu sangat lama dan CPU bekerja keras dengan beban hingga 90%-100% ( saya menggunakan Core 2 Duo 2,4GHz ) selama 2 jam untuk membuka dan lebih lama lagi untuk proses search and replace pada file sebesar 100MB.  Kemudian saya mencoba Vi Editor (Vim X11) dan ternyata proses tersebut bisa dilakukan jauh lebih cepat dan dengan beban CPU Maksimal 45%.

Dan waktu saya konversi file-file tersebut ke MySQL bahkan tidak sampai 1 menit 🙂 Sayangnya saya lupa menyimpan tampilan layar saat proses berlangsung ( ah jadi basbang deh ).  Terakhir, file file teks tersebut saya kompress menjadi tar.gz dan file yang tadinya sebenar 100MB tinggal 1MB dan file sebesar 360MB tinggal 8MB.  Dan sekarang lagi dikirim via email ke client 😉

8 thoughts on “Konversi file .dbf ke MySQL

  1. Dulu, aku lebih parah lagi. Aku pakai MS Access, trus ekspor ke XML. Kemudian coding pakai Perl buat ngubah XML ke sintaks SQL dan itu pun juga harus kupecah-pecah karena ternyata MySQL ada batasannya.

    Beberapa bulan kemudian, aku baru tahu ada software proprietary bernama Navicat. Agak gondok juga waktu tahu. Cuma aku membela diri saat itu, “aku gak mau pakai bajakan”.. hihihihihi.

    PS: MS Acces-nya milik kantor saat itu, jadi gak bajakan 😛

  2. #sufehmi
    Iya nih, tapi jadinya kalo ada persoalan sama besok gak jadi masalah lagi 😉

    #Kunderemp
    aku juga ada satu project pake MS Access untuk prototype, rencana juga di php mqsql-kan hasil akhirnya.

  3. Kok susah2 kl cuma mo konvert DBF ke MySQL
    gunakan aja MySQL Migration Toolkit bawaan MySQL nya
    dengan terlebih dulu DBF nya diimport ke format .mdb,
    baru di migration ke MySQL…
    aku dah pernah coba konvert 1.5jt record cepet bngt tu
    ga ada jam – jam an dan ga makan resource besar… 🙂

Leave a Reply