Tadi pagi, teman yang mengalami masalah ini bertanya lagi pada saya. Dia gak bisa menggunakan salah satu fitur pada modul yang dia buat. Sudah dicek menggunakan fungsi check, analyze dan repair dari phpmyadmin tidak ada yang mencurigakan (ngandelin bener phpmyadmin sih :P)

Dia sudah mencoba cara yang saya sarankan seperti ini:
C:\mysql\bin>myisamchk -r c:\mysql\data\folder\blabla.MYI
- recovering (with sort) MyISAM-table ‘c:\mysql\data\folder\blabla.MYI’
Data records: 104111
myisamchk: error: Can’t create new tempfile: ‘c:\mysql\data\folder\blabla.TMD’
MyISAM-table ‘c:\mysql\data\folder\blabla.MYI’ is not fixed because of errors
Try fixing it by using the –safe-recover (-o) or the –force (-f) option
C:\mysql\bin>myisamchk -r c:\mysql\data\folder\blabla1.MYI
- recovering (with sort) MyISAM-table ‘c:\mysql\data\folder\blabla1.MYI’
Data records: 105530
- Fixing index 1
- Fixing index 2
myisamchk: Error on delete of ‘c:\mysql\data\folder\blabla1.MYD’ (Errcode: 13)
myisamchk: error: 13 when fixing table
MyISAM-table ‘c:\mysql\data\folder\blabla.MYI’ is not fixed because of errors
Try fixing it by using the –safe-recover (-o) or the –force (-f) option

Ternyata gagal. Hmmmm… mungkin bisa dicoba dengan mencari tau dulu apa itu Errcode: 13

C:\mysql\bin>perror 13
Error code 13: Permission denied

Hlo kok permission denied? Hmmm… *mikir lagi* coba deh ikut saran dengan pakai opsi -o.

C:\mysql\bin>myisamchk -r -o c:\mysql\data\folder\blabla1.MYI
- recovering (with keycache) MyISAM-table ‘c:\mysql\data\folder\blabla1.MYI’
Data records: 105530
myisamchk: error: Can’t create new tempfile: ‘c:\mysql\data\folder\blabla1.TMD’
MyISAM-table ‘c:\mysql\data\folder\blabla1.MYI’ is not fixed because of errors
Try fixing it by using the –safe-recover (-o) or the –force (-f) option

Hiyaaaaaa tetep gak bisa. Coba lihat struktur foldernya, ternyata normal aja. Gak diset hidden ataupun read only. Kenapa ya ini? Coba deh dengan opsi -f.

C:\mysql\bin>myisamchk -r -f c:\mysql\data\folder\blabla.MYI
- recovering (with sort) MyISAM-table ‘c:\mysql\data\folder\blabla.MYI’
Data records: 104111
- Fixing index 1
Wrong bytesec: 0- 0- 0 at 18429724; Skipped
- Fixing index 2
- Fixing index 3
myisamchk: Error on delete of ‘c:\mysql\data\folder\blabla.MYD’
(Errcode: 13)
myisamchk: error: 13 when fixing table
MyISAM-table ‘c:\mysql\data\folder\blabla.MYI’ is not fixed because of errors
Try fixing it by using the –safe-recover (-o) or the –force (-f) option
- recovering (with sort) MyISAM-table ‘c:\mysql\data\folder\blabla.MYI’
Data records: 104111
- Fixing index 1
Wrong bytesec: 0- 0- 0 at 18429724; Skipped
- Fixing index 2
- Fixing index 3
myisamchk: Error on delete of ‘c:\mysql\data\folder\blabla.MYD’
(Errcode: 13)
myisamchk: error: 13 when fixing table
MyISAM-table ‘c:\mysql\data\folder\blabla.MYI’ is not fixed because of errors
Try fixing it by using the –safe-recover (-o) or the –force (-f) option

Yaaaahhh… masih gak bisa juga. Mana dua tabel lagi yang rusak (blabla dan blabla1). Ummm… hey tunggu. Gimana kalo service MySQLnya dimatiin dulu? Siapa tau bisa ya. Abis matiin service MySQLnya, coba lagi…

C:\mysql\bin>myisamchk -r -f c:\mysql\data\folder\blabla.MYI
- recovering (with sort) MyISAM-table ‘c:\mysql\data\folder\blabla.MYI’
Data records: 104111
- Fixing index 1
Wrong bytesec: 0- 0- 0 at 18429724; Skipped
- Fixing index 2
- Fixing index 3
C:\mysql\bin>myisamchk c:\mysql\data\folder\blabla.MYI
Checking MyISAM file: c:\mysql\data\folder\blabla.MYI
Data records: 104111 Deleted blocks: 0
- check file-size
- check key delete-chain
- check record delete-chain
- check index reference
- check data record references index: 1
- check data record references index: 2
- check data record references index: 3
- check record links

Alhamdulillaah. Akhirnya berhasil. Coba lagi untuk tabel blabla1

C:\mysql\bin>myisamchk -r -f c:\mysql\data\folder\blabla1.MYI
- recovering (with sort) MyISAM-table ‘c:\mysql\data\folder\blabla1.MYI’
Data records: 105530
- Fixing index 1
- Fixing index 2
C:\mysql\bin>myisamchk c:\mysql\data\folder\blabla1.MYI
Checking MyISAM file: c:\mysql\data\folder\blabla1.MYI
Data records: 105530 Deleted blocks: 0
- check file-size
- check key delete-chain
- check record delete-chain
- check index reference
- check data record references index: 1
- check data record references index: 2
- check record links

Alhamdulillaah… Sepertinya kalo masalahnya seperti ini, gak cukup dengan solusi yang ini, tetapi matikan dulu service MySQLnya, baru dibetulkan lagi. Emang sih kalo gak dimatikan, selain gak terselesaikan, takutnya kerusakannya bisa tambah parah.

Comments

5 Responses to “Kok tabel MySQLnya rusak lagi?”

  1. free java games on June 27th, 2008 9:07

    happy for you too

  2. juned on July 8th, 2008 18:59

    waduh muter mata saya liat SQL :(

  3. Freeware Pda on July 24th, 2008 9:20

    kok belum ada artikel baru lagi om, lagi sibuk yah?

  4. gareng on August 11th, 2008 13:54

    hmm….pusing juga bacanya, kode2 gitu. hehe…
    tp lumayan, dpt tambahan ilmu. makasih kk..
    salam kenal, http://www.gareng.net/ , u comment, i follow

  5. Mobimb free download on August 13th, 2008 22:17

    asyik juga ya

Leave a Reply