Cara Extract satu tabel dari file backup mysqldump
Berawal dari kesulitan yang saya alami, ketika ingin mengambil satu tabel dari file backup mysqldump yang berukuran besar.. yaitu sekitar 500mb ke atas, sedangkan cara konvensional terlalu memakan waktu padahal tabel dibutuhkan secepatnya. Setelah melakukan pencarian di google, akhirnya saya temukan cara efektif yaitu dengan menggunakan script grep dan sed.
Grep dan Sed sebenarnya perintah yang berasal dari linux, namun jangan khawatir untuk versi windows juga ada.
Sebenarnya terdapat 2 cara yang biasa saya lakukan untuk melakukan extract tabel dari file backup mysqldump yaitu:
1. Membuka file backup dengan aplikasi editor seperti ultraedit dan mengambil script tabel tertentu.
2. Melakukan restore file backup ke database lalu kemudian mengambil tabel tersebut via database
Namun seiring dengan bertambahnya data didatabase, cara pertama bisa menyebabkan aplikasi editor hang apabila size file backup terlalu besar, kemudian cara kedua kurang efektif dan sangat menghabiskan waktu karena untuk merestore satu file backup bisa memakan waktu kurang lebih 1 jam.
Berikut langkah mengextract satu tabel dari file backup mysqldump:
1. Download tools tambahan yaitu Grep dan Sed.
2. Tentukan file backup mysql yang ingin diextract, sebagai contoh dapat digunakan northwind.sql yang termasuk dalam satu bundle link dibawah.
3. Ketik perintah berikut di command prompt
grep -n "Table structure" "northwind.sql"
Penjelasan: perintah di atas mencetak nomor baris dari pencarian kata “Table structure”
4. Tentukan tabel mana yang ingin diextract, dalam contoh ini adalah tabel employees dan ketik perintah berikut:
sed -n "129,168 p" "northwind.sql" > tmp.sql
Penjelasan: perintah di atas mengirim output ke file dengan nama tmp.sql dari file northwind.sql dengan ketentuan baris dari 129 sampai 168. Perhatikan pada gambar, tabel employees berada pada baris 129 kemudian tabel berikutnya employeeterritories pada baris 169.
5. Lakukan restore tabel employees pada file tmp.sql ke database mysql
Berikut tools grep dan sed yang sudah didownload ditambah contoh file backup mysql dump.
Download
Setelah didownload ganti ekstensi file menjadi 7z dan extract filenya menggunakan Winrar atau 7zip. Selamat mencoba
Tutorial ini telah berhasil dipraktekkan pada komputer dengan spesifikasi berikut:
– OS Windows XP
– Memory ram 1 gb
– mysql 5.0.17
Referensi
http://code.openark.org/blog/mysql/on-restoring-a-single-table-from-mysqldump