Jun
Kok tabel MySQLnya rusak lagi?
Filed Under (IT) by godzalli on 05-06-2008
Tagged Under : database, mysql
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.

Iya, utk repair sebaiknya service mysqlnya di matiin dulu….
ghhghhhhhhhhhh
wah mumet ngliatnya
tanya keorang programing bro……. pasti tahu
waduh, bahasa apaan tuch???